問題タブ [flashsocket]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
actionscript-3 - ソケット メッセージが 1 つ遅れているように見える
あいまいな質問のタイトルで申し訳ありませんが、問題を説明するより良い方法は思いつきません。
redannick のライブラリを使用して socket.io サーバー ( netty )に接続していますFlashSocket.IO
すべて (接続、ハンドシェーク、プロトコルのアップグレード) は正しく機能しているように見えますが、メッセージの送受信を開始するときになると、奇妙な傾向に気付きます: メッセージへのすべての応答が 1 遅れています。
最も基本的な例として、1 つの PONG を受信する前に 2 つの PING を送信する必要があり、実際に受信した PONG は最初の PING に対する応答です。
より詳細な例: ルーム ID を含むメッセージを送信します。このメッセージは、"room-ID がアクティブ化されました" という形で応答を受け取ることになっています。サーバーから別のメッセージが送信されるまで、その応答を受信しません。
ルーム ID メッセージの後に PING を送信することで、サーバーに別のメッセージを送信させることができます。これにより、サーバーから送信された PONG がトリガーされますが、クライアント側で受信する唯一のメッセージは「部屋 ID がアクティブ化されました」というメッセージです。
問題はライブラリ内のどこかにあると感じていますが、FlashSocket.IO
正確にどこを見ればよいかわかりません。私は、socket.io のクライアントを使用して JavaScript で記述されたテスト アプリがあり、期待どおりに動作するため、サーバーが送信するはずのすべてのメッセージを送信していることを知っています。