2017-06-08 9 views
-2

node.jsアプリケーション用のsocket.ioの設定について、いくつか質問があります。node.jsアプリケーション用のsocket.ioの設定

  1. var socket = require('socket.io')(/* HERE */)を必要とする、私は入力/* HERE */がであるところ私のサーバーがリスンするポートする必要がありますか?

  2. 私は上記の行のすぐ下に、いくつかの定数と関数(下記参照)を含む.jsファイルのために、もう一つのrequire関数を持っています。そのファイルで 'socket'を参照しようとすると、定義されていません。しかし、この行は上記のsocket.ioミドルウェアのrequireラインの下にあるので、なぜそれは 'undefined'と言うのでしょうか?クライアント側のsocket.ioを設定するための

    const numbers = '1234' 
    function asd(req,res,next) { 
        socket.emit('a') 
    } 
    
    module.exports = { 
        asd 
    } 
    
  3. 、私はこの行を追加:十分かは 'はmydomain':

    var socket = io.connect('https://mydomain') 
    

    は、私が 'ポートはmydomain' を言う必要があるのですか?

+2

単純なサーバー側のコードですか? – mrid

+0

何のためにそれを投稿しますか? – konyv12

+0

'何のために投稿しますか? 'あなたのコードがデバッグに必要であることは分かりますか? – mrid

答えて

0

これは、あなたがはい、あなたは

<script src="socket.io.js"></script> 

<script> 
    var socket = new io.Socket(); 
    socket.connect('https://mydomain:8081') 

    socket.on('your_event',function() { 
     console.log('your_event receivid from the server'); 
    }); 
</script> 
を使用しているポートを指定する必要がありますsocket.io

var http = require('http'); 
var express = require('express'); 
var path = require('path'); 

var app = http.createServer(); 
var io = require('socket.io')(app); 

var port = 8081; 


io.on('connection', function(socket){ 

    socket.on('event1', function (data) { 
     console.log(data); 
     socket.emit('event2', { msg: 'delivered' }); 
    }); 


}); 


app.listen(port); 

あなたの2番目の質問に回答

を使用する方法であります

ここでソケットはポート8081に接続します

これは、あなたの全体のコードを投稿することができ

var http = require('http'); 
var io = require('socket.io'); 
var port = 8081; 

// Start the server at port 8081 
var server = http.createServer(); 

server.listen(port); 


var socket = io.listen(server); 

// example listener 
socket.on('event_2', function(client){ 
    console.log('event_2 received'); 
}); 

// example emitter 
socket.emit('event_1', { hello: 'world' }); 
+0

それは私の質問ではありませんでした。 – konyv12

+0

あなたは1と答えましたが、2と3は答えなかったと思います。 – konyv12

+0

@ konyv12 'socket.io' npmモジュールをインストールしましたか? – mrid

関連する問題