web-dev-qa-db-ja.com

ngrokをwebsocket(またはsocket.io)で使用する

Ngrok転送socket.io/websocket(ローカルホストのnodejsで実行)を示す簡単なサンプルコードはありますか?

言い換えれば、

ngrok http 3000

ポート3000で実行されているnodejsサーバーとsocket.ioで動作しますか?またはのようなもの

ngrok http+tcp 3000 (just wild guessing)

編集:

ngrok.comからの助けの後に私自身の質問に答えるために

単に使用する

ngrok http 3000

ローカルホストがバインドするWebアドレス文字列が表示されます。したがって、クライアントのJavaScriptコードで、

var socket = io.connect('http://localhost:3000');

var socket = io.connect('http://94349fe6.ngrok.io');

注意:

http://94349fe6.ngrok.ioはまさにそのWebアドレス文字列です。あなたのものはこれとは異なります。

もう一度編集:

実際、単純に行う場合:

var socket = io();

「デフォルトでは、ページを提供するホストに接続しようとします」

したがって、それも機能します。

17
Zhe Hu

はい。例のようにノードアプリがポート3000で動作している場合は、ngrokを使用してリバースプロキシを作成し、3000を世界に公開します。 Websocketはそれで問題なく動作します。

6
Shaun Sweet