web-dev-qa-db-ja.com

HTML5 Websocketsは、サーバーを使用せずに2つのクライアント(ブラウザー)に直接接続できますか? (P2P)

HTML5 Websocketを使用して、2つのクライアント(ブラウザ)の間で直接ソケットを開くことができます(IPアドレスを知っていて、NATトラバーサルの問題がないと仮定します)。ブラウザーから別のブラウザーへ、本質的にP2Pネットワークを作成します。これまでにWebで読んだすべてのもの、websocketはすべてクライアントとサーバー間の通信に使用されますが、クライアントとクライアントについては何もしません。

ありがとう

50
Justin

いいえ

詳細については、ここで既に回答済みです: websocketはp2p(ブラウザーからブラウザー)通信を許可しますか?

更新

WebRTC プロトコルとAPIは急速に進歩しており、2つのピア間でデータチャネルを確立できます(初期NATにはSTUN/TURNサーバーが必要な場合があります)トラバーサルとセットアップ)。

39
kanaka

過去から未来へ:実装を選択してください。

  • 最新のブラウザのほとんどは、 Websockets を使用してピアツープロキシをサポートしています。
  • ピアツーピアは、たとえば Opera Unite および FireFox Pow などの特定のブラウザープラグインを使用する場合にのみ使用できます。
  • 主要なブラウザは、ピアツーピアを許可する WebRTC を実装中です。
5
user656925

サーバーを自分で実装したくない場合は、 https://httprelay.io を使用できます。追加のライブラリは不要で、すべての通信は単純なAJAX呼び出しに基づいています。

2
Jonas