Html5 WebSocket API 的浏览器端简单使用

来源:互联网 发布:苹果免费看书软件 编辑:程序博客网 时间:2024/05/19 22:58

WebSocket协议版本的经常更换以及WebSocket技术的前景不用多说,未来绝非Http的世界,WebSocket的真正出场的时候,是浏览器端支持并且得到普及的时候。

相信那个时候,人们惊叹的发现,当年模拟全双工的Ajax技术,完全是欺骗感情。真正的实时全双工通讯,B/S架构如同C/S架构,乃Websocket!!

话不投机半句多,假若你对WebSocket不熟悉,那么请查看一下网站阅读协议规范。

WebSocket W3C       : http://dev.w3.org/html5/websockets/

W3C官网                  : http://www.w3.org/

Draft 网站           : http://tools.ietf.org/id/websocket

        本文针对自己 用c++开发的简单支持http以及WebSocket服务器(支持协议13版本),在浏览器端使用HTML5的WebSocket API函数,进行了测试。谷歌浏览器版本是Chrome_18.0.1025.162_XiaZaiBa,以下代码通过通用的API接口,实现把消息推送到服务器,而服务把传送的信息推送回客户端。当然,这里

可以知道,这服务器调用的模块功能是浏览器端推送什么数据,服务器返回什么数据。通过这简单的测试则可以看出服务器主动推送能力的强大。

Code:

<script type="text/javascript"> 

var host = '192.168.0.112'; 
var port = 80; 
var url = 'ws://'+host+':'+port+'/'+'websocket'+'/'; 
var w = new WebSocket(url); 
//var test = new arry();
document.write('建立了websocekt请求,等待到服务器......');

w.onopen = function(){ 
document.write('连接到服务器......');{
w.send("广工大老师好!");
}

//w.binaryType = "log"; 
w.onmessage = function(e){
w.send(e.data);
document.write('<br> 发送成功......<br>'); 
//for (i=0; i<data.length(); i++)
document.write(e.data);
}

/*
w.onclose = function(){
document.write('关闭链接......'); 
}
*/
</script> 

浏览器的代码实现简单,毕竟这是一个简单的测试。倘若要实现庞大的消息推送,则需要在服务器端做很多功夫。

要等其协议真正标准化么?或者使用现在的Socket.io库,在X86平台用Node.JS实现如此简单。那有没有想过,倘若

修改目前最强大的轻量级web服务器--Ngnix,扩展WebSocket模块。那样则不用这么费事儿,并且容易维护。



原创粉丝点击