&引用;发送非空';Sec WebSocket协议';标题,但未收到响应”;Django海峡
当我试图通过websocket连接到服务器时,我只在chrome(不是safari,也不是firefox)中遇到此错误:&引用;发送非空';Sec WebSocket协议';标题,但未收到响应”;Django海峡,django,websocket,django-channels,Django,Websocket,Django Channels,当我试图通过websocket连接到服务器时,我只在chrome(不是safari,也不是firefox)中遇到此错误: 发送了非空的“Sec WebSocket协议”标头,但未收到任何响应。 服务器接受连接,但chrome意外地立即将其关闭 以下是我在前端创建websocket连接的方式: const websocket=new websocket('ws://127.0.0.1:8000/ws/',['Token','user\u secret\u Token'])) 这就是我的consu
发送了非空的“Sec WebSocket协议”标头,但未收到任何响应
。
服务器接受连接,但chrome意外地立即将其关闭
以下是我在前端创建websocket连接的方式:
const websocket=new websocket('ws://127.0.0.1:8000/ws/',['Token','user\u secret\u Token']))
这就是我的consumers.py
的外观:
class MyConsumer(JsonWebsocketConsumer):
def连接(自):
self.room\u group\u name='example\u room'
#加入房间小组
异步到同步(self.channel\u layer.group\u add)(self.room\u group\u name,self.channel\u name)
self.accept()
解决方案是添加我在服务器上调用self.accept()
时使用的websocket协议(令牌)作为子策略参数
下面是我的消费者现在的样子:
class MyConsumer(JsonWebsocketConsumer):
def连接(自):
self.room\u group\u name='example\u room'
#加入房间小组
异步到同步(self.channel\u layer.group\u add)(self.room\u group\u name,self.channel\u name)
#不正确
#self.accept()
#正确的
self.accept('Token')