外星人源码论坛 首页 编程经验 Html5——WebSocket

Html5——WebSocket

2018-3-5 06:52
原作者: 外星人源码网 来自: 外星人源码网 收藏 分享 邀请

ing... 背景 是什么 API 使用WebSocket构造函数创建webSocket对象。 var webSocket = new WebSocket('ws://localhost:8080'); 构造器创建的时候就会开始建立连接(跟服务进行握手操作),并且readyState等于0。 如果握 ...

ing...

背景

是什么

API

使用WebSocket构造函数创建webSocket对象。

var webSocket = new WebSocket('ws://localhost:8080');

构造器创建的时候就会开始建立连接(跟服务进行握手操作),并且readyState等于0。 如果握手成功,则会触发open事件,并且readyState等于1;反之如果导致握手失败(url不正确等),WebSocket会喷出error日志,并且触发error, close事件,并且readyState等于3。

属性

1. url

<String>,只读,webSocket服务地址。在创建WebSocket对象是传入的值。
url的方案是ws://或者wss://。

2. readState

<int>, 只读,表示WebSocket对象的状态。可取值的枚举:

WebSocket.CONNECTING (0):表示还未建立连接;
WebSocket.OPEN (1): 表示已经建立连接,可以和服务进行通信了;
WebSocket.CLOSING (2): 表示连接正在关闭连接,进行关闭连接握手;
WebSocket.CLOSED (3): 表示链接已经被关闭了。

3.protocol

<String>|<[String]>, 只读,子协议。

4.事件属性方法

还有4个事件对应的方法:onopen, onclose, onmessage, onerror。

方法

1.send(data)

向服务发送数据data。
注意只有readyState等于OPEN(1)时才能正确执行该方法,否则会抛异常。
data必须是字符串???

2.close

关闭连接。会触发close事件。被close的webScoket不能重新建立连接。

事件

兼容性

WebScoket, MozWebScoket

WebSocket服务

原理

握手

WebSocket协议中的握手过程通过http协议完成的。

Client### ?

Request:
Sec-WebSocket-Extensions
Sec-WebSocket-Key
Sec-WebSocket-Version
Upgrade:websocket

Response:
Sec-WebSocket-Accept

参考

    介绍:https://www.webcodegeeks.com/... 规范:https://www.w3.org/TR/2011/WD... API:https://developer.mozilla.org... 介绍:https://www.websocket.org/qua... WebSocket数据包协议详解: http://www.cnblogs.com/smark/...

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

粉丝 阅读78 回复0
上一篇:
你对数据库管理员的定义是什么?发布时间:2018-03-05
下一篇:
命令模式发布时间:2018-03-05
推荐资讯
国内最专业的源码技术交流社区
全国免费热线电话

0373-5171417

周一至周日9:00-23:00

反馈建议

admin@eenot.com 在线QQ咨询

扫描二维码关注我们