0

この疑問は、実際にはwebsocketに関する私の質問の1つに由来しています... socket.ioとwebsocketの違い

google Chrome / firebug / fiddlerなどのWebインスペクターが、websockets / channel-apiなどのプッシュテクノロジーを使用しているときにメッセージをトレースできない理由を考えていました(またはこれを行う方法はありますか?)これは、接続をhttpからアップグレードしているためです?

4

3 に答える 3

1

WebSocketはHTTPリクエストを使用していません。JSでWebSocketを作成すると、ブラウザーはサーバーへのTCPソケット接続を作成し、この接続はストリームベースとして処理されます(TCPのため)。ブラウザーが単一メッセージに十分なデータを受信すると、デフレームされたデータを通過するonmessageイベントを使用してWebSocketオブジェクトに通知します。

技術的には、すべての着信メッセージの独自のトレースを実装し、それらをコンソールにドロップすることは難しくありません。ただし、WebSocketを使用する可能性のある複雑なリアルタイムアプリケーションのほとんどはデータが多すぎるため、1秒間に数百のメッセージが表示されてインスペクターの速度が大幅に低下することに注意してください。

私見ですが、主要なブラウザが、必要なメッセージだけを表示できる高度なフィルタリングを備えたWebSocketロギングシステムを実装するのは時間の問題です。

于 2012-04-12T20:09:42.767 に答える
0

FiddlerWebSocketメッセージをトレースしますが、HTTPではないため、セッションリストに直接表示されません。http://blogs.msdn.com/b/fiddler/archive/2011/11/22/fiddler-and-websockets.aspxを参照してください

于 2012-04-18T13:37:32.847 に答える
0

この投稿への回答は古くなっています。作家が述べたように、それは時間の問題でした。Chromeは、最近WebSocket検査のためにかなり良いロギングを持っています

http://blog.kaazing.com/2012/05/09/inspecting-websocket-traffic-with-chrome-developer-tools/

于 2015-04-10T22:38:49.280 に答える