辉煌仪奇 2022-03-14 15:23 采纳率: 46.6%
浏览 193
已结题

django + Channels如何实现websocket

需要一个django demo,实现django http,websocket同时使用,且websocket能使用路由
下面是我实现websocket的方式,websocket能实现但是不能指定路由,我知道django+Channels 是可以实现websocket指定路由访问的,可是我没找到方法,希望各位指点一下
我的实现步骤
ASGI区分请求方式

img

websocket响应

img

根据方式调用对应路由实现函数
在websocket请求时直接调用了自己的websocket_application请求函数,我改怎么配置实现只有配置路由
我这种使用方式有种弊端,需要使用下面的方式启动django 这不是我想要的

uvicorn Personalnavigationsystem.asgi:application

我想在启动django的时候,websocket也启动了,这个我在网页上看到过成熟的例子,可是我按照操作没有弄出来
需求:寻求一个demo,启动后能自定义websocket路由,路由响应函数方式如djangohttp路由那样或者指点我如何操作达成这个目标

我的环境是
django ==4.0.3
Channels == 3.0.4
python ==3.10.1

  • 写回答

8条回答 默认 最新

  • 急速光粒 2022-03-14 22:00
    关注

    路由有点困难,可以在外部实现路由再传入websocket就行了。

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 3月17日
  • 赞助了问题酬金10元 3月15日
  • 修改了问题 3月15日
  • 赞助了问题酬金10元 3月14日
  • 展开全部