2017-05-28 1 views

答えて

1

websocket接続では、message.content辞書にquery_stringが含まれています。

import urlparse 
def ws_connect(message): 
    params = urlparse.parse_qs(message.content['query_string']) 
    hello = params.get('hello', (None,))[0] 

入門ドキュメント(http://channels.readthedocs.io/en/stable/getting-started.html)がQUERY_STRINGを意味message.contentパスの一部として含まれているが、ケースのように表示されません。

import urlparse 
from channels import Group 
from channels.sessions import channel_session 

@channel_session 
def ws_message(message): 
    room = message.channel_session['room'] 
    Group("chat-{0}".format(room)).send({"text": "[{1}] {0}".format(message.content['text'], room)}) 

@channel_session 
def ws_connect(message): 
    message.reply_channel.send({"accept": True}) 
    params = urlparse.parse_qs(message.content['query_string']) 
    room = params.get('room',('Not Supplied',))[0] 
    message.channel_session['room'] = room 
    Group("chat-{0}".format(room)).add(message.reply_channel) 

@channel_session 
def ws_disconnect(message): 
    room = message.channel_session['room'] 
    Group("chat-{0}".format(room)).discard(message.reply_channel) 
:以下

は部屋がクエリ文字列に渡されたチャットアプリケーションのサンプルのための作業consumer.pyです
関連する問題