美文网首页
WebSocket 的对象特性

WebSocket 的对象特性

作者: 凌雲木 | 来源:发表于2017-07-26 19:53 被阅读34次

    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
      用于指定客户端和服务器通信时采用的协议。

    相关文章

      网友评论

          本文标题:WebSocket 的对象特性

          本文链接:https://www.haomeiwen.com/subject/fxdokxtx.html