美文网首页
关于webSoket理解

关于webSoket理解

作者: 小鱼仔_5858 | 来源:发表于2019-03-11 20:29 被阅读0次

    webSoket 出现是因为普通的http请求,只是客户端发送请求,然后服务器接收,想要获取服务器端的消息只能通过Ajax请求,但h5之后出现的webSoket,打破了这一僵局~~~实现了客户端和服务器端全双工通信~

    一,特点:建立连接之后一直保持连接状态。

    var Socket = new WebSocket(url, [protocol] );

    二,属性:

     Socket.readyState---只读属性 readyState 表示连接状态,可以是以下值:0 - 表示连接尚未建立。1 - 表示连接已建立,可以进行通信。2 - 表示连接正在进行关闭。3 - 表示连接已经关闭或者连接不能打开。

    Socket.bufferedAmount (buffererdAmount 缓冲挂载)只读属性 bufferedAmount 已被 send() 放入正在队列中等待传输,但是还没有发出的 UTF-8 文本字节数。

    三,事件:

    open---连接建立时触发

    message---客户端接收服务端数据时触发

    onerror---通信发生错误时触发

    close---连接关闭时触发

    四,方法

    Socket.send()使用连接发送数据

    Socket.close()关闭连接

    五,示例

    // 初始化一个 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 和 WebSocket 有什么关系?

    Websocket 其实是一个新协议,跟 HTTP 协议基本没有关系,只是为了兼容现有浏览器的握手规范而已,也就是说它是 HTTP 协议上的一种补充。

    Html 和 HTTP 有什么关系?

    Html 是超文本标记语言,是一种用于创建网页的标准标记语言。它是一种技术标准。Html5 是它的最新版本。

    Http 是一种网络通信协议。其本身和 Html 没有直接关系。

    相关文章

      网友评论

          本文标题:关于webSoket理解

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