2016-07-28 5 views
-2

Socket.ioは実際にどのように機能しますか?私は単純なノードチャットアプリをダウンロードしてチェックアウトし、Google Chromeのネットワークタブの下でHTTPリクエストを調べました。チャットを適切に更新するためには、クライアントサイドのjavascriptが常にhttpリクエストを送信し続けることを仮定することができます。チャットは更新されていますが、送信されたリクエストはまだ表示されません。別のタブのメッセージは私のタブの更新を見ることができます。Socket.ioは誤解されています

https://github.com/lcristianiim/chat-app

私はまた、このようなユーザの切断後に何が起こるかのように、sockets.ioの基本を知ってみたいですか? ありがとう!

+0

タイトルは同じように見えますが、質問は異なります。あなたが送ったものを見て、私が尋ねたイベントについて議論しますが、上に、あなたが送ったリンクには含まれていないアップデートシステムの仕組みを理解したかったのです。 – user1938653

+0

質問は本当にほとんど同じです。あなたは本当にそこのコメントを読むべきです、あなたが求めているすべての答えがその質問のページで利用可能です。 –

答えて

-1

WebSocketsを基礎とする主要な技術として使用します。デベロッパーコンソールでスパムのlong-pollingリクエストを確認したい場合は、デフォルトのトランスポートとしてWebSocketを無効にすることもできます。

+0

ああ、彼らは単に "スパミング"をカバーする方法を使用していますか?実際には、実際には、更新を求めるHTTPリクエストが途切れることはありませんか? – user1938653

+0

@ user1938653 no。 WebSocketは、送信されたデータの最後に閉じる通常のHTTP要求の代替手段を提供するため、本質的に異なります。逆に、WebSocketは、クライアントとサーバーの両方がいつでも接続を介してデータを送信できる単一のHTTP要求でオープンなライブ接続を維持します。ウェブポケットが登場する前の長いポーリングの古い技術よりはるかに効率的です。 –

+0

私はあなたがトランスポートを無効にすることができたと言ったとき、そのライブラリを使っている特定のブラウザがウェブソケットやフラッシュソケットのようなより現代的で効率的な技術をサポートしていない場合、socket.ioは複数のフォールバック技術を使用します。そのため、いくつかの異なるレイヤーを単純なAPIに抽象化するため、非常に人気があります。 –

関連する問題