最新动态
WebSocket实现网页实时聊天工具 | 消息推送 | 搭建WebSocket服务、python WebsocketServer
2024-12-19 23:00

WebSocket实现网页实时聊天工具 | 消息推送 | 搭建WebSocket服务、python WebsocketServer

WebSocket是什么

  1. 首先websocket是一种通信协议,并不是一种工具。
  2. WebSocket是一种在单个TCP连接上进行全双工通信的协议。全双工通信:就是通信的双方可以同时发送和接收信息的信息交互方式。
  3. WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在WebSocket API中

浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。

WebSocket详解及应用

  • 在客户端想知道服务器端处理数据的进度
  • 或者服务器端需要给客户端推送消息

这个时候我们通常的做法就是轮询长轮询
轮询:就是在特定的时间内(例如每个2秒,就向服务器端发送http请 求,然后由服务器端返回最新的数据给浏览器。

 

长轮询:客户端(浏览器)向服务器发送http请求,如果服务器端没有数据就不返回数据,等待,一直保持http连接,等到服务器端有数据后在返回数据(Response)。然后再继续第二次、第三次…请求。

 

缺点:上面的两种方法其缺点时很明显的,每次都要建立http连接,并且连接次数很多,会占用服务器带宽,造成带宽浪费,而且这种方法很被动,不是服务器主动发起的请求。

WebSocket流程

 

先来看看效果图吧

websocket服务端python代码

 
 

客户端html代码

 

运行方法

1、运行web_socket_server.py
2、浏览器打开ws_msg.html文件

源码地址

github:https://github.com/jiugua9/Python_WebSocket



    以上就是本篇文章【WebSocket实现网页实时聊天工具 | 消息推送 | 搭建WebSocket服务、python WebsocketServer】的全部内容了,欢迎阅览 ! 文章地址:https://sicmodule.kub2b.com/quote/8726.html 
     栏目首页      相关文章      动态      同类文章      热门文章      网站地图      返回首页 企库往资讯移动站https://sicmodule.kub2b.com/mobile/,查看更多   
发表评论
0评