0
以下のコードは私の現在の設定ですが、うまくいきましたが混乱します。socket.io設定のエクスプレスジェネレータ
サーバ側
var server = require("http").Server(express);
var io = require("socket.io")(server);
server.listen(5000);
io.on('connection', function(client) {
});
cilent
var socket = io.connect('http://localhost:5000');
我々はアプリケーションのポート5000でソケットの別のサーバーを作成する必要があるのはなぜ?ソケットは3000を使用できませんか?エクスプレスのランニングポートです。 server.listen( '5000')の行を削除してserver.listen()を実行し、クライアント側でポート3000に接続しようとすると動作しません。
あなたが表示しているコード(ポート5000上)で行っているのと同じように、Webサーバーに同じポートをsocket.ioと同じように使用できます。コードがうまくいかない場合は、そのコードを表示する必要があります。 'server.listen(5000);'はあなたの高速サーバーを起動しています。あなたはそこに港を置く必要があります。 'var io = require(" socket.io ")(server);'あなたのWebサーバーにsocket.ioをバインドしています。 'var server = require(" http ")。サーバ(express); 'は、Webサーバーを作成し、それに明示的な要求ハンドラーをバインドしています。 – jfriend00
@ jfriend00新速達版bin/wwwにサーバーを作成すると、サーバーの行を削除して今すぐ動作します。 –
私たちがあなたの質問に実際に答えるのを助けたり、後に来る人を助けてくれるものを私たちに提示していないので、今考えたことがあるように見えます。 – jfriend00