2017-02-17 18 views
0

自分のプロジェクトにthisを添付しました。このプロジェクトでは、自分のプロジェクトでソケットioライブラリを使用できます。あなたは私のサーバーは8080ポート用listeneingされ見ることができるように私は私のコード流星とソケットのIOポート

// Start server 
    try { 
    server.listen(8080); 
     console.log("Server is litsnening for 8080 port"); 
    } catch (e) { 
    console.error(e); 
    } 

の一部を掲載します。問題は、ポート3000で起動されたmeteorコマンドを使用して私の流星アプリに星をつけるときです。 enter image description here http://localhost:3000/これで、どのようにクライアントに8080ポートで接続するように指示できますか?同じポートを使うことができれば素晴らしいだろうが、これは不可能だ。では、サーバーが接続をどのようにリスンしていますか? 3000または8080ポート?

答えて

0

この問題はありません。サーバーを起動しているコードを再確認できますか?例えば以下

var app = require('http').createServer(handler) 
var io = require('socket.io')(app); 
app.listen(8001); 
+0

返信ありがとうございますが、私は流星を使っていますhttps://github.com/Akryum/meteor-socket-io server example – David

0

あなたは混乱していると思います。 socket.ioを使用すると、サーバ上に新しいリスニングポートが開かれますので、Meteor用とsocket.io用の2つのポートが公開されます。 まずmeteorはnpmパッケージをサポートしていますので、socket.io npmパッケージを直接使用することができます(最後のバージョンが得られます)。 サーバがログインしていない場合:

console.log("Server is litsnening for 8080 port"); 

あなたが実際に/を含むコードのその部分を実行している場合、そのポートが開いて、使用にすべてのプラットフォームで利用可能ですnetstatコマンドである場合は、確認したい場合、私は、チェックします(ご使用のプラットフォームに基づいてパラメータを確認してください)。 Linuxでは、コマンドは次のとおりです。あなたのクライアントに比べ

sudo netstat -lp

あなたのようなものでsocket.ioサーバに接続する必要があります。

var socket = Npm.require('socket.io-client')(url); 

socket.on('connect', function(){ 
    console.log("Connected"); 
}); 
socket.on('disconnect', function(){ 
    console.log("Disconnected"); 
}) 
0

私は少し遅れていますが、今日、私はに必要な流星のアプリでsocket.ioを実装し、私は、このソリューションは、これまでに動作しますが、私はこれはグーであれば知らないように思わ

import { WebApp } from 'meteor/webapp'; 
import socketIO from 'socket.io'; 

const io = socketIO(WebApp.httpServer); 

io.on('connection', function(socket) { 
    console.log('new socket client'); 
}); 

の両方に同じポートを使用したいですd。