django创建websocket的方法

介绍

小编给大家分享一下django创建websocket的方法,希望大家阅读完这篇文章后大所收获、下面让我们一起去探讨吧!

伴随HTML5推着出的websocket,真正实现了Web的实时通信,使B/S模式具备了C/S模式的实时通信能力.WebSocket的工作流程是这样的:浏览器通过JavaScript向服务端发出建立websocket连接的请求,在websocket连接建立成功后,客户端和服务端就可以通过TCP连接传输数据。因为websocket连接本质上是TCP连接,不需要每次传输都带上重复的头部数据,所以它的数据传输量比轮询和彗星技术小了很多。

<强>安装dwebsocket

安装方法:

1。通过pip

pip  install , dwebsocket2

2。通过下载到本地

解压,执行,python  setup.py 安装

<强>使用方法

如果你想为一个单独的视图处理一个websocklet连接可以使用accept_websocket装饰器,它会将标准的HTTP请求路由到视图中。使用require_websocke装饰器只允许使用WebSocket连接,会拒绝正常的HTTP请求。

在设置中添加设置MIDDLEWARE_CLASSES=dwebsocket.middleware。WebSocketMiddleware这样会拒绝单独的视图实用websocket,必须加上accept_websocket装饰器。

设置WEBSOCKET_ACCEPT_ALL=True可以允许每一个单独的视图实用websockets

<强>一些方法和属性

1. request.is_websocket ()

如果是个websocket请求返回真,如果是个普通的http请求返回假,可以用这个方法区分它们。

2. request.websocket

在一个websocket请求建立之后,这个请求将会有一个websocket属性,用来给客户端提供一个简单的api通讯,如果request.is_websocket()是假的,这个属性将是没有。

3. websocket.wait ()

返回一个客户端发送的信息,在客户端关闭连接之前他不会返回任何值,这种情况下,方法将返回没有

4. websocket.read ()

如果没有从客户端接收到新的消息,读方法会返回一个新的消息,如果没有,就不返回。这是一个替代等的非阻塞方法

5. websocket.count_messages ()

,返回消息队列数量

6. websocket.has_messages ()

,如果有新消息返回真,否则返回假

7. websocket.send(消息)

,向客户端发送消息

8. websocket.__iter__ ()

, websocket迭代器

看完了这篇文章,相信你对django创建websocket的方法有了一定的了解,想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!

django创建websocket的方法