日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

淺談django channels 路由誤導(dǎo)

瀏覽:238日期:2024-09-30 13:37:39

與django路由有區(qū)別

他們都有根路由,但是不一樣。

django的根路由:

urlpatterns = [ path(’login/’,include(’login.urls’)), path(’’,views.home), path(’helloapp/’, include(’helloapp.urls’)), path(’admin/’, admin.site.urls),]

channels的根路由:

只能形如這種樣子,URLRouter里面是一個(gè)列表,列表當(dāng)中是具體路由條目。

application = ProtocolTypeRouter({ # (http->django views is added by default) ’websocket’: AuthMiddlewareStack( URLRouter([ re_path(r’ws/chat/(?P<room_name>w+)/$’, consumers.ChatConsumer), #path(’’, consumers.rtcConsumer),]) ),})

有人說(shuō)為什么不能這樣呢?

application = ProtocolTypeRouter({ # (http->django views is added by default) ’websocket’: AuthMiddlewareStack( URLRouter( chat.routing.websocket_urlpatterns ) ),})

問(wèn)得好,的確可以,這也是文檔的寫(xiě)法,替換一下是一樣的。根路由指向chat這個(gè)APP的路由條目,而chat.routing.websocket_urlpatterns就等于:

[re_path(r’ws/chat/(?P<room_name>w+)/$’, consumers.ChatConsumer), path(’’, consumers.rtcConsumer),]

那么,假如我有兩個(gè)APP(webrtc和chat)需要用到websocket,那么我很自然的想到在兩個(gè)APP中分別新建routing.py路由文件,然后將根路由寫(xiě)成這樣:

application = ProtocolTypeRouter({ # (http->django views is added by default) ’websocket’: AuthMiddlewareStack( URLRouter( webrtc.routing.websocket_urlpatterns, chat.routing.websocket_urlpatterns, ) ),})

很遺憾,報(bào)錯(cuò)參數(shù)過(guò)多。加個(gè)列表:

application = ProtocolTypeRouter({ # (http->django views is added by default) ’websocket’: AuthMiddlewareStack( URLRouter([ webrtc.routing.websocket_urlpatterns, chat.routing.websocket_urlpatterns, ]) ),})

依然錯(cuò)誤。我甚至將兩個(gè)路由的list合成一個(gè)list才沒(méi)問(wèn)題:

routinglist=[]routinglist.extend(chat.routing.websocket_urlpatterns)routinglist.extend(webrtc.routing.websocket_urlpatterns)application = ProtocolTypeRouter({ # (http->django views is added by default) ’websocket’: AuthMiddlewareStack( URLRouter( routinglist ) ),})

請(qǐng)問(wèn),根路由的作用究竟在哪?這個(gè)根路由的作用在于不僅僅只有websocket,還有一些其他的服務(wù),看到上面代碼的逗號(hào)就明白了。但是如果只用websocket,這個(gè)根路由沒(méi)意義,因?yàn)樗荒苤赶蛞粋€(gè)routing.py.

文檔的誤導(dǎo)

文檔讓我們一步一步實(shí)現(xiàn)一個(gè)簡(jiǎn)單的聊天室,他將routing.py寫(xiě)在chat這個(gè)APP的目錄下,如果我除了chat這個(gè)APP需要用到websocket,那么其他APP的路由也得寫(xiě)到chat里面的routing.py。因此,我為什么要將routing.py放在chat里面呢,它又不是chat專屬。

更一般的形式

所以我建議,別學(xué)文檔例子,將routing.py文件放在任何APP之下,而應(yīng)該放在工程目錄下(與APP同目錄)創(chuàng)建一個(gè)文件夾如consumer,在里面創(chuàng)建routing.py和消費(fèi)者。

channels文檔真不細(xì)致,怪不得用的人少,網(wǎng)上一點(diǎn)有用的資料沒(méi)有

找到文檔的websocket消費(fèi)者,就這么一點(diǎn)?

淺談django channels 路由誤導(dǎo)

而在源碼中有這么多:

def websocket_connect(self, message) def connect(self) def accept(self, subprotocol=None) def websocket_receive(self, message) def receive(self, text_data=None, bytes_data=None) def send(self, text_data=None, bytes_data=None, close=False) def close(self, code=None) def websocket_disconnect(self, message) def disconnect(self, code)

看過(guò)一句話

django使用websocket最好的辦法是用tornado做websocket服務(wù)器

到此這篇關(guān)于淺談django channels 路由誤導(dǎo)的文章就介紹到這了,更多相關(guān)django channels 路由內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Django
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
婷婷成人在线| se01亚洲视频 | 亚洲一区中文| 亚洲最新无码中文字幕久久| 国产激情一区| 欧美激情另类| 韩国三级一区| 黄色欧美日韩| 日韩激情视频网站| 麻豆精品久久| 一本大道色婷婷在线| 国产视频一区欧美| 最新亚洲国产| 精品三级在线| 国产一区导航| 久久精品国产福利| 亚洲网站视频| 欧美日一区二区在线观看| 国产精品亚洲二区| 成人精品久久| 亚洲色诱最新| 久久精品天堂| 亚洲欧美日韩国产一区| 久久精品72免费观看| 欧美亚洲在线日韩| 国产日产一区| 在线一区免费| 久久男人av资源站| 亚洲免费一区三区| 久久久久国产精品一区二区| 亚洲久久一区| 色爱av综合网| 欧美1区2区3| 亚洲免费黄色| 精品一区av| 免播放器亚洲| 久久精品成人| 亚洲黄色中文字幕| 四虎精品一区二区免费| 日韩高清中文字幕一区| 国产精品欧美日韩一区| 福利精品在线| 亚州av一区| 日韩在线a电影| 精品中文一区| 九九色在线视频| 久久一区视频| 久久麻豆视频| 玖玖精品视频| 欧美亚洲在线日韩| 久久精选视频| 日韩免费高清| 久久精品123| 91看片一区| 蜜桃成人精品| 天堂资源在线亚洲| 成人羞羞视频播放网站| 久久久一本精品| 青青久久av| 国产美女一区| 中文字幕免费一区二区| 在线看片日韩| 日韩av不卡在线观看| 综合亚洲视频| 日韩精品高清不卡| 国产精品亲子伦av一区二区三区| 欧美日韩中文| 精品中文在线| 精品日韩视频| 美女精品在线| 日本亚洲不卡| 国语精品一区| japanese国产精品| 亚洲精品一二三**| 久久不卡国产精品一区二区| 精品在线网站观看| 欧洲毛片在线视频免费观看| 亚洲一区欧美| 欧美精品不卡| 午夜精品成人av| 亚洲精品影院在线观看| 久久精品二区亚洲w码| 色婷婷久久久| 一二三区精品| 日韩欧美中文字幕电影| 久久亚洲风情| 久久久久亚洲精品中文字幕| 亚洲一级高清| 欧美一区免费| 免费观看不卡av| 国产精品三级| 国产色综合网| 精品欠久久久中文字幕加勒比| 日韩高清中文字幕一区二区| 黑丝一区二区| 精品国产aⅴ| 亚洲乱码视频| 国内精品福利| 黄色aa久久| 久久99久久人婷婷精品综合| 99re国产精品| 91精品一区二区三区综合在线爱| 国产精品永久| 日韩毛片网站| 久久久久久久久99精品大| 国产精品tv| 日韩高清在线观看一区二区| 蜜桃视频欧美| 国产成人精品福利| 欧美一区网站| 日本aⅴ免费视频一区二区三区| 欧美午夜不卡| 伊人久久成人| 亚洲精品一二三区区别| 成人日韩在线观看| 在线人成日本视频| 麻豆91在线播放| 精品中文在线| 日产午夜精品一线二线三线| 久久国产视频网| 国产麻豆精品| 国产精品草草| 麻豆91精品91久久久的内涵| 日韩精品视频在线看| 视频一区视频二区中文| 亚洲欧洲午夜| 视频一区二区三区入口| 免费人成黄页网站在线一区二区| 不卡中文字幕| 久久亚洲国产精品一区二区| 夜夜嗨网站十八久久| 亚洲综合小说| 国产欧美日韩一级| 久久婷婷国产| 久久久9色精品国产一区二区三区| 精品丝袜在线| 午夜在线视频一区二区区别| 亚洲综合激情在线| 国产精品分类| 蜜桃精品视频| 一本一道久久a久久精品蜜桃| 先锋亚洲精品| 里番精品3d一二三区| 久久夜夜操妹子| 鲁大师影院一区二区三区| 涩涩涩久久久成人精品| 国产精品视频一区二区三区四蜜臂| 国产精品毛片久久久| 午夜av成人| 首页亚洲欧美制服丝腿| 里番精品3d一二三区| 午夜国产精品视频免费体验区| 亚洲一级淫片| 高清日韩中文字幕| 成人羞羞在线观看网站| 亚洲精品一级二级三级| 精品成av人一区二区三区| 午夜久久一区| 日韩成人精品一区| 亚洲精品少妇| 波多野结衣一区| 国产一区二区久久久久| 久久先锋影音| 久久久影院免费| 国产成人精品一区二区三区在线| 免费不卡在线观看| 日韩大片在线| 老司机精品视频网| 日韩精品亚洲专区| 亚洲精品国产嫩草在线观看| 国产日韩一区二区三区在线| 黄色亚洲免费| 成人免费电影网址| 久久亚洲黄色| 国产精久久一区二区| 日本欧美一区二区| 另类国产ts人妖高潮视频| 久久亚洲在线| 伊人久久大香线蕉av不卡| 久久影院午夜精品| 国产91在线播放精品| 国产精品qvod| 国产麻豆一区| 国产精品久久久久av蜜臀| 不卡中文字幕| 午夜欧美视频| 日韩视频在线一区二区三区 | 国产日韩一区| 国产探花一区在线观看| 蜜桃视频在线观看一区| 午夜在线观看免费一区| 亚洲欧洲另类| 久久久久久久久丰满| 亚洲精品.com| 欧洲激情综合| 久久先锋影音| 日韩国产在线观看| 国产欧美一区二区精品久久久 | 精品在线99| 亚洲激情不卡|