欢迎访问 生活随笔!

凯发k8官方网

当前位置: 凯发k8官方网 > 前端技术 > html >内容正文

html

html5 websockets学习 -凯发k8官方网

发布时间:2025/1/21 html 24 豆豆
凯发k8官方网 收集整理的这篇文章主要介绍了 html5 websockets学习 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

2019独角兽企业重金招聘python工程师标准>>>

轮询、长轮询及流三种提供实时数据凯发k8官方网的解决方案,都会涉及到http请求和相应报头,其中包含大量额外的、不必要的报头数据,会造成传输延迟。

    websocket,是web应用程序的传输协议,类似于tcp,提供了双向的按序到达的数据流。作为web的一部分,websocket连接的是url,而非因特网上的主机和端口。

    websocket使用:

        要连接远程主机,只需要新建一个websocket实例,提供希望连接的对端url。

        ps:ws://wss://前缀分别表示websocket连接安全websocket连接

        

        基于同一底层tcp/ip连接,在客户端和服务器端之间的初始握手阶段,将http协议升级至websocket协议,websocket连接就建立完成了。连接一旦建立完成,websocket数据帧就可以以全双工的模式在客户端和服务器间进行双向传送。

        连接本身,是通过websocket接口定义的message事件和send函数来运作的。

时间监听器

    websocket编程遵循异步编程模式;

    打开socket后,只需要等待事件发生,而不需要主动向服务器轮询,所以需要在websocket对象中添加回调函数来监听事件:

    四个事件:

        open:socket连接建立时被触发

        message:收到消息时被触发

        close:socket连接关闭时被触发

        error:错误事件发生时会响应未料到的错误


    事件处理回调函数:

        onopen: websocket.onopen  = function(e) {...}

        onmessage: websocket.onmessage = function(e) {...}

        onclose: websocket.onclose = function(e) {...}

        onerror: websocket.onerror = function(e) {...}


    发送消息:

        websocket处于打开状态时,可以采用send()方法来发送消息;

            document.getelementbyid("sendbtn").onclick = function() {

                websocket.send(document.getelementbyid("inputmsg").value);

            }



转载于:https://my.oschina.net/u/1251536/blog/404677

与50位技术专家面对面20年技术见证,附赠技术全景图

总结

以上是凯发k8官方网为你收集整理的html5 websockets学习的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得凯发k8官方网网站内容还不错,欢迎将凯发k8官方网推荐给好友。

网站地图