2016-10-20 8 views
7

私はそれらを初めて使用しようとしており、私は正しい方向に向かっているのだろうと思います。ここで Djangoのチャンネルとsocket.io-client

socket.ioはWebSocketのラッパーである、とのWebSocketが利用できないとき、バックサブ最適なソリューションに落ちる、私の理解です。

ジャンゴチャンネルでもwebsocketと通信できます。
(私はそれがシステムのようなメッセージキューとしてジャンゴを変換と思います。このような理解や誤解がこの質問に影響を与えるべきであるが)

だから私は、クライアント上のサーバーとsocket.io・クライアント上でDjangoのチャネルを使用しようとしています。

socket.ioは、Djangoのチャンネルに対し

socket.on(type, (payload)=> {})

のように見えるAPIは

message.reply_channel.send({ "text": json })

の形式は "テキスト" socket.on(type)typeありましたか?

Djangoチャンネルとsocket.io-clientはお互いに話すことができますか? Socket.IOのREADMEから

答えて

1

注:Socket.IOはWebSocketの実装ではありません。可能であれば、Socket.IOはトランスポートとして実際にWebSocketを使用しますが、メッセージの確認応答が必要な場合は、パケットタイプ、ネームスペース、およびack IDの各パケットにメタデータを追加します。そのためWebSocketクライアントはSocket.IOサーバーに正常に接続できず、Socket.IOクライアントはWebSocketサーバー(ws://echo.websocket.orgなど)にも接続できません。プロトコルの仕様hereを参照してください。

したがって、チャンネルはSocket.IOで直接動作するとは限りません。 Global browser support for websockets is at 93%です。これはおそらくwebsocket APIを直接使用するのに十分な高さです。

関連する問題