Cómo autenticar a un usuario en una conexión websocket en canales django cuando se usa la autenticación de token

Estoy usando un marco frontend (Vuejs) ydjango-rest-framework para la API REST en mi proyecto. Además, para la autenticación de tokens web JSON estoy usandodjango-rest-framework-jwt. Después de un inicio de sesión exitoso, el usuario recibe un token. Este token se pasa a cada solicitud para obtener cualquier material relacionado con la API.

Ahora me gustaría integrarcanales de django en mi proyecto Entonces, después de un inicio de sesión exitoso, cuando se recibe el token en el lado del cliente, me gustaría iniciar una conexión websocket. Luego, en el servidor (consumidor), me gustaría verificar si el usuario solicitado no es anónimo. Si el usuario solicitado es anónimo, me gustaría cerrar la conexión o aceptarla.

Así es como lo he hecho hasta ahora:

lado del cliente:

const socket = new WebSocket("ws://" + "dev.site.com"+ "/chat/");

routing.py:

channel_routing = [
    route("websocket.connect", ws_connect),
    ...
    ...
]

consumidores:

def ws_connect(message):

    # if the user is no anonymous
    message.reply_channel.send({
        "accept": True
    })

    # else
    message.reply_channel.send({
        "close": True
    })

En eldocumentación hay un decorador@channel_session_user_from_http que proporcionará unmessage.user. Pero estoy usando un token en lugar de una sesión. ¿Cómo puedo verificar la conexión de un usuario cuando uso la autenticación de token para poder aceptar o cerrar la conexión? O, si hay una mejor manera, ¿podría aconsejarme? Gracias.

Respuestas a la pregunta(2)

Su respuesta a la pregunta