I am using a frontend framework (Vuejs <http://Vuejs.org>) and django-rest-framework <http://www.django-rest-framework.org/> for the REST API in my project. Also, for JSON web token authentication I am using django-rest-framework-jwt <http://getblimp.github.io/django-rest-framework-jwt/>. After a successful login, the user is provided with a token. This token is passed into every request to fetch any API related stuff.
Now I would like to integrate django channels <https://channels.readthedocs.io/en/stable/index.html> into my project. So, after successful login, when the token is received in the client side, I would like to initiate a websocket connection. Then on the server (consumer), I would like to check if the requested user is not anonymous. If the requested user is anonymous, I would like to close the connenction or else accept it. This is how I have till now: client side: const socket = new WebSocket("ws://" + "dev.site.com"+ "/chat/"); routing.py: channel_routing = [ route("websocket.connect", ws_connect), ... ...] consumers: def ws_connect(message): # if the user is no anonymous message.reply_channel.send({ "accept": True }) # else message.reply_channel.send({ "close": True }) In the documentation <https://channels.readthedocs.io/en/stable/getting-started.html#authentication> there's a decorator @channel_session_user_from_http which will provide a message.user. But I am using a token instead of a session. How can I check a user on connection when using token authentication, so that I can accept or close connection. Or, if there is a better way could you please advise me with it. Thank you. -- You received this message because you are subscribed to the Google Groups "Django users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/django-users. To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/CA%2B4-nGp5KhvYKdhD%3Dufus-jmHz%2BN%2BLPzOuX1R3V%2BPOYt8U4QXA%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.

