0

ここのリンクを使用して nodeJS io.socket チャット アプリを作成しました - http://cestfait.ch/content/chat-webapp-nodejs

ラップトップで実行できます。他のマシンからnodeJSアプリに接続する方法について、Googleでヘルプが見つかりませんでした。Wi-Fi経由で接続した別のラップトップがあります。

今、別のラップトップから別のユーザーを、最初のラップトップで実行されているnodeJSサーバーに接続する方法を本当に知りたいです。

私はあなたの助けにとても感謝しています。広い意味でのヘルプも問題ありません。

編集 1: ブランドンの方法を試しているときに、次のエラーが発生します。何が悪いのかわからない。ファイルclient.htmlをブラウザで直接実行する必要があります。実行http://192.168.43.244:8000/client.htmlするとエラーがスローされます。

C:\node>node server.js
   info  - socket.io started

C:\node\node_modules\socket.io\lib\manager.js:0
(function (exports, require, module, __filename, __dirname) { /*!
^
RangeError: Maximum call stack size exceeded
4

2 に答える 2

1

それは複雑です。

静的 IP アドレスを持っていない (おそらく持っていない) 場合は、コンピューターをインターネットに再接続するたびに新しい IP アドレスを取得することになるため、毎回コードを更新する必要があります。時間。

また、開発マシンと (wifi) ルーターの両方で、ファイアウォールに問題があります。

最善の解決策は、静的 IP を取得することです。でも安くはない

于 2012-06-22T16:27:27.303 に答える
1

まず、Socket.IO が HTML を提供するサーバーに接続していることを確認します。でclient.html、次を変更します。

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

var socket = io.connect();

ホスト/ポートを省略すると、Socket.IO は HTML を提供する同じホストとポートに接続します。

これが完了したら、 にアクセスして、別のコンピューターからサーバーにアクセスできますhttp://1.2.3.4:8000。ここ1.2.3.4で、 はサーバーを実行しているコンピューターの IP アドレスです。これが機能するには、接続しているコンピューターとサービスを提供しているコンピューターが同じネットワーク上にある必要があります。別のネットワーク上の誰かと (一時的に) 接続したい場合は、localtunnelなどのツールを使用できます。

于 2012-06-22T16:27:40.610 に答える