WebSocket
WebSocket本质上是基于TCP协议。使用http握手建立通信的阶段,使用WebSocket保持实时通信。
与http半双工不同的是,WebSocket是正在实现全双工通信的协议。
在html5实例化一个WebSocket对象
var Socket = new WebSocket(url, [protocol] );
WebSocket属性
Socket.readyState:只读属性,表示连接状态
0-表示连接尚未建立
1-表示连接已经建立
2-表示连接正在关闭
3-表示连接已经关闭或连接不能打开
Socket.bufferedAmount:只读属性
表示已被send()放入正在队列中等待传输,但是还没有发出utf-8文本字节数
WebSocket事件
在前端写的函数
事件事件处理程序描述
openSocket.onopen连接建立时触发
messageSocket.onmessage客户端接收服务端数据时触发
errorSocket.onerror通信发生错误时触发
closeSocket.onclose连接关闭时触发
客户端Html和javascript代码实现
function WebSocketTest()
{
if ("WebSocket" in window)
{
alert("您的浏览器支持 WebSocket!");
// 打开一个 web socket
var ws = new WebSocket("ws://localhost:9998/echo");
ws.onopen = function() // 建立连接
{
// Web Socket 已连接上,使用 send() 方法发送数据
ws.send("发送数据");
alert("数据发送中...");
};
ws.onmessage = function (evt) // 保持通信
{
var received_msg = evt.data;
alert("数据已接收...");
};
ws.onclose = function()// 关闭通信
{
// 关闭 websocket
alert("连接已关闭...");
};
}
else
{
// 浏览器不支持 WebSocket
alert("您的浏览器不支持 WebSocket!");
}
}
运行按键事件触发设置代码
运行 WebSocket
python WebSocket获取实时数据几种常见连接方式
使用create_connection链接
需要pip install websocket-client (此方法不建议使用,链接不稳定,容易断&#x