WebSocket 的对象特性

WebSocket对象特性

  • 1readyState:WebSocket只读属性,表示WebSocket的连接状态。
    WebSocket.OPEN//连接已经建立,值为1
    WebSocket.CONNECTING//连接正在创建中,但没有成功创建,值为0
    WebSocket.CLOSING//连接正在关闭,值为2
    WebSocket.OPEN//连接已经关闭,值为3

WebSocket开始创建时,readyState为0,代表连接正在创建。这时在WebSocket成功创建连接之前,向服务器发送数据或者发送数据,是不行的,系统会报错。

//检查WebSocket是否打开
function SendHandler(data){
if(ws.readyState==WebSocket.OPEN){
    ws.send(data);
  }else{
      //do something else 
  }
}
  • 2 bufferedAmount 数据缓冲量
    在向服务器发送大量数据时,数据通过互联网传输,数据过大时并不一定能立即传输到服务端。数据过大时,WebSocket内部机制会将数据排入队列。bufferedAmount这个特性就是用来检查已经进入队列,但是尚未发送到服务器的字节数。
    下列通过bufferedAmount展示了向服务端传送数据的速率,避免了网络饱和。
//设定缓冲量字节数
var MaxBuffer=2000;
//创建WebSocket
 var fullUrl = "ws://192.168.0.200:8844;
var ws = new WebSocket(fullUrl);
ws.onopen = function (e) {
     SetInterval(function(){
        if(ws.bufferedAmount<MaxBuffer){
                 ws.send("data");//发送数据
              }
          });
        }

可以在关闭连接前,检查缓存数据是否都应经发送到服务器端,避免数据丢失的现象。

  • 3 protocol
    用于指定客户端和服务器通信时采用的协议。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,800评论 19 139
  • 在一点一点地改变。赖床的习惯改了,周末本该睡个天翻地覆,却早早起来吃早点、洗澡、洗衣服、换床单被罩一气呵成,突然感...
    我就是喜欢熬夜阅读 1,540评论 0 1
  • 感恩大自然的神奇,谢谢。 感恩生命的可贵,谢谢。 感恩孩子的可爱,谢谢。 感恩父母的养育,谢谢。 感恩婆婆的付出,...
    莫水娥阅读 1,378评论 0 1
  • (一) 我曾一心一意奔自由 我是名副其实的三高,个子高,心气儿高,家族遗传血压高。曾经还有过三多的经历,参加的篮球...
    我为大宝带盐阅读 4,338评论 8 3

友情链接更多精彩内容