我有红色5.4。我收到了这个错误:aioredis.errors.ReplyError: ERR unknown command 'BZPOPMIN'
,我正在遵循django-channels网站上的教程。这是消费者代码:
class ChatConsumer(WebsocketConsumer):
def connect(self):
self.room_name = self.scope['url_route']['kwargs']['room_name']
self.room_group_name = 'chat_%s' % self.room_name
# Join room group
async_to_sync(self.channel_layer.group_add)(
self.room_group_name,
self.channel_name
)
self.accept()
def disconnect(self, close_code):
# Leave room group
async_to_sync(self.channel_layer.group_discard)(
self.room_group_name,
self.channel_name
)
# Receive message from WebSocket
def receive(self, text_data):
text_data_json = json.loads(text_data)
message = text_data_json['message']
# Send message to room group
async_to_sync(self.channel_layer.group_send)(
self.room_group_name,
{
'type': 'chat_message',
'message': message
}
)
# Receive message from room group
def chat_message(self, event):
message = event['message']
# Send message to WebSocket
self.send(text_data=json.dumps({
'message': message
}))
我使用python manage.py runserver 0.0.0.0:8080 -- noreload
运行我的服务器,也许它需要做些什么,我在5656端口上打开页面,它在8080上托管,因为我使用的是迷航器,这些是VagrantFile中的设置端口。
编辑不确定为什么,但是如果我在pip冻结时检查redis-server的版本,我会得到(.venv)迷航@迷走险:/迷走险/ChatApp$ redis-server --版本Redis server v=4.0.9 sha=00000000:0 malloc=jemalloc-3.6.0 bits=64 build=9435c3c2879311f3,但我不知道这是为什么,以及如何解决这个问题。
pip输出:
aioredis==1.3.1
asgiref==3.2.10
async-timeout==3.0.1
attrs==20.1.0
autobahn==20.7.1
Automat==20.2.0
certifi==2020.6.20
cffi==1.14.2
channels==2.4.0
channels-redis==3.0.1
chardet==3.0.4
constantly==15.1.0
cryptography==3.0
daphne==2.5.0
Django==3.1
django-channels==0.7.0
hiredis==1.1.0
hyperlink==20.0.1
idna==2.10
incremental==17.5.0
msgpack==1.0.0
oauthlib==3.1.0
pyasn1==0.4.8
pyasn1-modules==0.2.8
pycparser==2.20
PyHamcrest==2.0.2
pyOpenSSL==19.1.0
pytz==2020.1
redis-server==5.0.7
requests==2.24.0
requests-oauthlib==1.3.0
service-identity==18.1.0
six==1.15.0
sqlparse==0.3.1
Twisted==20.3.0
txaio==20.4.1
urllib3==1.25.10
zope.interface==5.1.0
发布于 2021-06-13 05:30:12
我不确定,但问题可能与频道有关--Redis,可能与频道的版本不兼容,尝试降级或更新频道-Redis。
https://stackoverflow.com/questions/63592120
复制相似问题