2016-04-26 4 views
2

Flaskを使用しているPythonサーバーには、Flask-SocketIOを使用したwebsocket接続があります。同様の質問があります: Send custom data along with handshakeData in socket.io?アイデアは同じことをするが、ノードを使用する代わりに、Flaskを使用します。私は、クライアントが、たとえば、connectイベントにいくつかのデータを送信したい:Flask-SocketIOを使ったカスタムハンドシェイクデータ

var socket = io("http://127.0.0.1:3000/", { query: "foo=bar" }); 

私はそのカスタムデータを取得することができていない、と私は、クライアントの枠組みによるクッキーに頼ることはできません。実際の解決策は、connectイベントをいつものようにしてから、カスタムイベントでその情報をペイロードとして取得することです。しかし、私たちが望むのは、connectイベントを実行するだけです。ありがとう!ミゲルは、あなたは、単にサーバー側で

from flask import Flask 
from flask import request 

app = Flask(__name__) 
socketio = SocketIO(app) 

@socketio.on('connect') 
def connect(): 
    foo = request.args.get('foo') 
    # foo will be 'bar' when a client connects 

socketio.run(app) 

を行うことができ、彼のコメントで示唆したように

+2

接続ハンドラで 'request.args'にアクセスしようとしましたか?私はあなたのクエリ文字列の引数を与える必要がありますと思います。 – Miguel

答えて

1

関連する問題