実行するために非常に基本的なsocket.ioサンプルを取得することにも問題があります。基本的なsocket.ioサンプルを取得する
var io = require('socket.io').listen(80);
io.sockets.on('connection', function (socket) {
socket.emit('news', { hello: 'world' });
socket.on('my other event', function (data) {
console.log(data);
});
});
サーバ側で
とクライアント側の
<script src="/socket.io/socket.io.js"></script>
<script>
var socket = io.connect('http://localhost');
socket.on('news', function (data) {
console.log(data);
socket.emit('my other event', { my: 'data' });
});
</script>
:例自分のサイトのウェルカムページ上の最初の例。私は
host.js
ファイル内のサーバー側を保存し、クライアント側
client.htm
ファイルで、私は
npm host.js
を実行する場合、私はすでに本当に期待されていない
info - socket.io started
warn - error raised: Error: listen EADDRINUSE
を取得します。それで、client.htm
(または少なくとも私がそれと関係があると思っているのは、それをclient.htmファイルに貼り付ける)のために、私は空白の画面しか得られません。あまり驚くべきことではありませんが、それは存在しないファイル/socket.io/socket.io.js
を含むことから始まりますが、これをhost.js
に変更しても、私は空白の画面しか得られないという事実は変わりません...
私は無知だ。
どのポートに関係しますか?私は81を試しましたが、今度はホスト側を走らせるとハングアップします。つまり 'info-socket.io started 'と表示されますが、コマンドラインには戻りません。 .htmページはまだ空白なので、これは問題を解決していないようです。 – user1111929
最初の問題だったEADDRINUSEエラーを解決しました。はい、それは重要です。また、サーバが通信を待っているため、ハングしていません。だから、あなたは問題のサーバー側の半分を解決しました。 – bryanmac
問題のクライアント側では、htmページをhttp:// localhost:81(81ではない)に接続するように更新しましたか? – bryanmac