私の Web アプリケーションでは、Node.js と Socket.io を使用しています。
アプリケーションをローカルまたはwifiネットワークでテストすると、すべて問題ありませんでしたが、モバイルデータに切り替えたため、接続エラーが発生しました:
'ws://url/socket.io/1/websocket/' への WebSocket 接続に失敗しました: WebSocket ハンドシェイク中のエラー: 予期しない応答コード: 502
携帯電話会社がポート 8080 と 80 をブロックしているようですが、nodejitsu では別のポートに切り替えることはできないようです。
モバイルネットワーク、node.js、およびsocket.ioを処理する方法を経験した人はいますか?
編集:
ホストとして、Heroku の無料サブスクリプションと Nodejitsu の無料サブスクリプションを試しました。
モバイルでは、 http: //websocketstest.com/ でモバイルと Wi-Fiのポートを確認しました。モバイルでは、ポート 80 と 8080 でテストが失敗しました
。ポートを 443 に変更できるのではないかと思ったのですが、server.listen()
ポート 443 に設定しても、nodejitsu はポート 80 をリッスンしているようです。
おそらく別のポートを介してWebSocketsが可能だと思いますが、ポートを変更する方法や、たとえばノードジツがポート80をリッスンしているだけの理由がわかりません.