标题:
WebSocket 教程(2)
[打印本页]
作者:
look_w
时间:
2019-1-17 20:15
标题:
WebSocket 教程(2)
WebSocket 客户端在客户端,没有必要为 WebSockets 使用 JavaScript 库。实现 WebSockets 的 Web 浏览器将通过 WebSockets 对象公开所有必需的客户端功能(主要指支持 Html5 的浏览器)。
客户端 API以下 API 用于创建 WebSocket 对象。
var
Socket =
new
WebSocket(url, [protocol] );
以上代码中的第一个参数 url, 指定连接的 URL。第二个参数 protocol 是可选的,指定了可接受的子协议。WebSocket 属性以下是 WebSocket 对象的属性。假定我们使用了以上代码创建了 Socket 对象:
属性描述Socket.readyState只读属性 readyState 表示连接状态,可以是以下值:0 - 表示连接尚未建立。1 - 表示连接已建立,可以进行通信。2 - 表示连接正在进行关闭。3 - 表示连接已经关闭或者连接不能打开。Socket.bufferedAmount只读属性 bufferedAmount 已被 send() 放入正在队列中等待传输,但是还没有发出的 UTF-8 文本字节数。WebSocket 事件以下是 WebSocket 对象的相关事件。假定我们使用了以上代码创建了 Socket 对象:
事件事件处理程序描述openSocket.onopen连接建立时触发messageSocket.onmessage客户端接收服务端数据时触发errorSocket.onerror通信发生错误时触发closeSocket.onclose连接关闭时触发WebSocket 方法以下是 WebSocket 对象的相关方法。假定我们使用了以上代码创建了 Socket 对象:
方法描述Socket.send()使用连接发送数据Socket.close()关闭连接示例
[url=]
[/url]
//
初始化一个 WebSocket 对象
var
ws =
new
WebSocket("ws://localhost:9998/echo"
);
//
建立 web socket 连接成功触发事件
ws.onopen =
function
() {
//
使用 send() 方法发送数据
ws.send("发送数据"
); alert(
"数据发送中..."
);};
//
接收服务端数据时触发事件
ws.onmessage =
function
(evt) {
var
received_msg =
evt.data; alert(
"数据已接收..."
);};
//
断开 web socket 连接成功触发事件
ws.onclose =
function
() { alert(
"连接已关闭..."
);};
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/)
Powered by Discuz! 7.0.0