私はWebRTCとWebSocketを初めて使い、このチュートリアルに従ってWebRTCデモプロジェクトを作成していましたが、WebSocket接続を作成できません。プロジェクトで述べたのと同じ手順を踏んでいます。彼のプロジェクトはポート8080で実行されており、ws:// localhost:9090に言及しています。私のプロジェクトはポート8081で実行されていますが、彼のURL ws:// localhost:9090をコピーしました。9090の意味がわからず、このエラーを受け取り、サーバーはnode.jsです。ローカルホストも8081に変更しましたが、ハンドシェイクエラーが発生します。
「ws:// localhost:9090 /」へのWebSocket接続に失敗しました:接続の確立エラー:net :: ERR_CONNECTION_REFUSED。
Chromeでは、localhostへの安全でないwebsocket(ws)接続を許可しません(wssのみです。したがって、ローカルweb/websocketサーバーのTLS証明書を設定する必要があります)。ただし、Firefoxでも同じように機能します。
通常、WebRTCには安全な接続(https)が必要です。発生したエラーは、TLS/SSL証明書が占有されているためです。プロジェクトで適切に構成されていない可能性があります。有効なTLS/SSL証明書を提供し、プロジェクトで正しく構成すると、上記のエラーなしで機能します。
Your_IPはws://yourIp:9090/
のような192.168.?.?
を使用する必要があります。
ポートを8080に変更してみてください
const ws = new WebSocket('ws://localhost:8080/chat')
ポート9090は、reactotronによって使用されます。おそらくあなたはそれをあなたのプロジェクトで使用しており、アプリは閉じられているため、reactotronに接続できません。 reactotronを開くと、エラーが消えます。