Socket.ioのようなWebソケット実装を使用することをお勧めします。
Socket.ioには多くの選択肢がありますが、主な利点は、古いブラウザでは複数のフォールバックがあることです。したがって、たとえばWebソケットが利用できない場合、または動作しない場合、AJAX long pollingが試行されます。この方法で、一度に作成されたブラウザをサポートすることもできます。誰もWebソケットが何であるかを知りませんでしたが、APIはそのままです。
最近のブラウザを扱うだけでよいことが分かっている場合は、代わりにもっと軽量の代替方法を使用することができます。 ws。
純粋にHTTPに基づいており、追加のプロトコルを必要としない全く異なるものをお探しの場合は、HTML5 Server-sent eventsに興味があるかもしれません。彼らは素晴らしいですが、Webソケットとは対照的に、双方向ではありません。currently not supported in IE and Edgeです。彼らにはまたいくつかの欠点があります。たとえば、カスタムヘッダーをSSEリクエストに追加することはできません。
HTTP2の場合、特にStreams APIのようなことが起こっていることを考慮すると、将来的にWebソケットにどの程度の影響が残るか疑問に思うかもしれません。次に、純粋なHTTPを使用して基本的にすべてを解決することができます。これにはいくつかの利点もあります。 Streams APIはここにはありませんので、待ちましょう...
チェックアウト[socket.io](https://socket.io/) –