私はパーソナルアシスタント用のWebアプリケーションを開発しています。ユーザーはサイトに接続している間、オンラインにいる間に個人の通知に登録できるようにします。私はsocketio、フラスコsocketioでこれをやって行き、私は、私はちょうどそうのように、マルチスレッドを使用することができることを考えた: flask-socketioとのプライベートチャット
def update_loop():
while my_update_condition:
if my_update_exists:
socketio.emit("update", my_update)
@socketio.on("get_updates")
def get_updates(data):
'''Websocket thread for getting updates'''
socketio.emit("debug", {"value": "Starting update loop"})
update_thread = threading.Thread(target=update_loop)
update_thread.start()
しかし、この戦略を使用して私のコードは、オンラインですべてのユーザーへのアップデートを提供します。フラスコのsocketioを使用して、プライベートチャットを安全に実装するにはどうすればよいですか?アップデートのデータは超高感度ではありませんが、ユーザーが設定した通知であるため、通常は個人的です。ありがとう。 注:これに関する私の研究では、socketid
を使用して特定の送信者にメッセージを送信することがありましたが、flask-socketioを使用してこれを実装する例は見つかりませんでした。
これは私がやったことですが、安全かどうかは分かりませんでした。認証されていないユーザーはその部屋に接続できませんでしたか? –
クライアントはどの部屋にも接続できません。クライアントをルームに割り当てるサーバーです。 – Miguel
ああ、それは私がかなり理解していない、ありがとう! –