django創(chuàng)建websocket的方法-創(chuàng)新互聯(lián)

創(chuàng)新互聯(lián)www.cdcxhl.cn八線(xiàn)動(dòng)態(tài)BGP香港云服務(wù)器提供商,新人活動(dòng)買(mǎi)多久送多久,劃算不套路!

成都創(chuàng)新互聯(lián)于2013年創(chuàng)立,是專(zhuān)業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都網(wǎng)站建設(shè)、網(wǎng)站建設(shè)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元昌平做網(wǎng)站,已為上家服務(wù),為昌平各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話(huà):13518219792

小編給大家分享一下django創(chuàng)建websocket的方法,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!

伴隨著HTML5推出的WebSocket,真正實(shí)現(xiàn)了Web的實(shí)時(shí)通信,使B/S模式具備了C/S模式的實(shí)時(shí)通信能力。WebSocket的工作流程是這 樣的:瀏覽器通過(guò)JavaScript向服務(wù)端發(fā)出建立WebSocket連接的請(qǐng)求,在WebSocket連接建立成功后,客戶(hù)端和服務(wù)端就可以通過(guò) TCP連接傳輸數(shù)據(jù)。因?yàn)閃ebSocket連接本質(zhì)上是TCP連接,不需要每次傳輸都帶上重復(fù)的頭部數(shù)據(jù),所以它的數(shù)據(jù)傳輸量比輪詢(xún)和Comet技術(shù)小了很多。

安裝dwebsocket

安裝方法:

1.通過(guò)pip

pip install  dwebsocket2

2.通過(guò)下載到本地

解壓,執(zhí)行 python setup.py install

使用方法

如果你想為一個(gè)單獨(dú)的視圖處理一個(gè)websocklet連接可以使用accept_websocket裝飾器,它會(huì)將標(biāo)準(zhǔn)的HTTP請(qǐng)求路由到視圖中。使用require_websocke裝飾器只允許使用WebSocket連接,會(huì)拒絕正常的HTTP請(qǐng)求。

在設(shè)置中添加設(shè)置MIDDLEWARE_CLASSES=dwebsocket.middleware.WebSocketMiddleware這樣會(huì)拒絕單獨(dú)的視圖實(shí)用websocket,必須加上accept_websocket 裝飾器。

設(shè)置WEBSOCKET_ACCEPT_ALL=True可以允許每一個(gè)單獨(dú)的視圖實(shí)用websockets

一些方法和屬性

1.request.is_websocket()

如果是個(gè)websocket請(qǐng)求返回True,如果是個(gè)普通的http請(qǐng)求返回False,可以用這個(gè)方法區(qū)分它們。

2.request.websocket

在一個(gè)websocket請(qǐng)求建立之后,這個(gè)請(qǐng)求將會(huì)有一個(gè)websocket屬性,用來(lái)給客戶(hù)端提供一個(gè)簡(jiǎn)單的api通訊,如果request.is_websocket()是False,這個(gè)屬性將是None。

3.WebSocket.wait()

返回一個(gè)客戶(hù)端發(fā)送的信息,在客戶(hù)端關(guān)閉連接之前他不會(huì)返回任何值,這種情況下,方法將返回None

4.WebSocket.read()

如果沒(méi)有從客戶(hù)端接收到新的消息,read方法會(huì)返回一個(gè)新的消息,如果沒(méi)有,就不返回。這是一個(gè)替代wait的非阻塞方法

5.WebSocket.count_messages()

 返回消息隊(duì)列數(shù)量

6.WebSocket.has_messages()

 如果有新消息返回True,否則返回False

7.WebSocket.send(message)

 向客戶(hù)端發(fā)送消息

8.WebSocket.__iter__()

 websocket迭代器

看完了這篇文章,相信你對(duì)django創(chuàng)建websocket的方法有了一定的了解,想了解更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道,感謝各位的閱讀!

分享名稱(chēng):django創(chuàng)建websocket的方法-創(chuàng)新互聯(lián)
文章路徑:http://muchs.cn/article22/cdejjc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管網(wǎng)站策劃、建站公司、微信小程序、用戶(hù)體驗(yàn)響應(yīng)式網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)