Не удается получить пользователя для входа в канал Django с помощью WebsocketConsumer

#django #websocket #django-channels #channels

#django #websocket #django-каналы #Каналы

Вопрос:


Я не могу получить логин пользователя в каналах Django. Я использую AuthMiddlewareStack, но все еще сталкиваюсь с проблемой. Ошибка каналов Django. Использование WebsocketConsumer, но не удается получить текущего зарегистрированного пользователя


 
Consumers.py


class TableData(WebsocketConsumer):

    def connect(self):
        print(self.scope["user"])
        self.group_name='tableData'
        async_to_sync(self.channel_layer.group_add)(
            self.group_name,
            self.channel_name
        )
        self.accept()
        data = Game.get_games(1)
        
        self.send(text_data=json.dumps({
            'payload': data
        }))

 

routing.py

 ws_pattern= [
    path('ws/tableData/',consumers.TableData),
    path('ws/room/' , consumers.Room),
    path('ws/game/room/<room_name>' , consumers.ChatConsumer)
]

application= ProtocolTypeRouter(
    {
        'websocket':AuthMiddlewareStack(URLRouter(ws_pattern))
    }
)


``

 

Комментарии:

1. Вы уверены, что пользователь вошел в систему на клиенте?

2. Да, пользователь вошел в систему

3. привет @AbhijeetGupta, ты делаешь репетитора для этого youtube.com/watch?v=FKYZqAVyY8A — Значит , вы уже решили эту проблему ?