IT技术互动交流平台

使用HTML5 WebSocket API

作者:QT开发爱好者  发布日期:2012-08-01 09:32:38

介绍一个简单的接口(参考下表),开发人员可以替代和尽可能减少长轮询,不停地轮询方式。

 

[Constructor(in DOMString url, optional in DOMString protocol)]

interface WebSocket {

readonly attribute DOMString URL;

// ready state

const unsigned short CONNECTING = 0;

const unsigned short OPEN = 1;

const unsigned short CLOSED = 2;

readonly attribute unsigned short readyState;

readonly attribute unsigned long bufferedAmount;

 

// networking

attribute Function onopen;

attribute Function onmessage;

attribute Function onclose;

boolean send(in DOMString data);

void close();

};

WebSocket implements EventTarget;

 

使用WebSocket接口可能并不简单。为了连接到一个端点,只是创建一个WebSocket实例,来提供一个包含能代表你想连接的端点的URL的对象,正如以下的例子。注意到ws:// 和 wss://前缀分别被用来表示WebSocket连接和安全的WebSocket连接

 

var myWebSocket = new WebSocket("ws://www.it165.net");

 

WebSocket连接的建立是在客户端和服务器最初的握手阶段从HTTP协议升级到WebSockets协议实现的。这个连接通过WebSocket接口中定义的onmessage和send方法暴露出来。

 

在连接到一个端点和发送消息之前,你可以关联一系列的事件监听来处理连接生命周期的各个阶段,就像下面的例子。

 

myWebSocket.onopen = function(evt) { alert("Connection open ..."); };

myWebSocket.onmessage = function(evt) { alert( "Received Message: " + evt.data); }; myWebSocket.onclose = function(evt) { alert("Connection closed."); };

 

如要向服务器发送一个消息,只要调用send来发送你想发的内容。发送消息,调用close中断连接,如下面的例子。正如你所看到的,他已经简单的不能再简单了。

myWebSocket.send("Hello WebSockets!");

myWebSocket.close();

Tag标签: HTML5   WebSocket   API  
  • 专题推荐

About IT165 - 广告服务 - 隐私声明 - 版权申明 - 免责条款 - 网站地图 - 网友投稿 - 联系方式
本站内容来自于互联网,仅供用于网络技术学习,学习中请遵循相关法律法规