我已经按照docs(channels)中所述进行了工作,直到我将channel_layers的代码粘贴到settings.py中为止。
我安装了channel_layers中提到的所有规范
ASGI_APPLICATION = 'mysite.routing.application'
CHANNEL_LAYERS = {
'default': {
'BACKEND': 'channels_redis.core.RedisChannelLayer',
'CONFIG': {
"hosts": [('127.0.0.1', 6379)],
},
},
}
为什么我的chat_server意外关闭
答案 0 :(得分:0)
首先检查Wheather Redis是否在您的计算机中运行。
如果不是google,您会发现。
->检查以下几点是否正确:
1。检查您发送到套接字的数据是否为字符串格式。
2。检查要发送到套接字的json是否正确解析。
3。同样,检查从套接字接收的数据是否正确解析。
如果要自动重新连接到套接字,请使用 https://github.com/joewalnes/reconnecting-websocket将js文件复制到此处,并将脚本放入html中,然后将WebSocket替换为ReconnectingWebSocket
答案 1 :(得分:0)
此问题是由于在设置中进行配置后,reddis通道无法在后端工作。py,您应该启动reddis通道
如果您使用的是docker,请尝试
docker run -p 6379:6379 -d redis:5
答案 2 :(得分:0)
如果您的Django频道存在连接问题,
首次安装频道-> pip install -U频道 安装频道后,在您的setting.py文件中添加“ channels”安装应用,并按照以下文档在您的django项目中正确安装频道 -> https://channels.readthedocs.io/en/latest/installation.html
在安装django频道后,现在在django项目中安装频道-redis,
第一步是在本地计算机上安装Redis,但要安装Redis 5或更高版本 按照安装步骤在Ubuntu中安装Redis服务器,如果使用Windows,则直接下载Redis。 下载以及此链接中的安装步骤-> https://redis.io/download
在本地计算机上重新安装Redis之后,在Django项目中安装频道-redis ->点安装频道-redis == 2.4.2
这是Redis与Django通道连接问题的最新解决方案,希望对您有帮助