3
NodeJSとsocket.ioで手を差し伸べて問題が発生しました。私は、NodeJSとSocket.ioをローカルホストにインストールして実行しています。Socket.ioサーバーが発射しない
server.js
// Require HTTP module (to start server) and Socket.IO
var http = require('http'), io = require('socket.io');
// Start the server at port 8080
var server = http.createServer(function(req, res){
// Send HTML headers and message
res.writeHead(200,{ 'Content-Type': 'text/html' });
res.end('<h1>NodeJS Server Online</h1>');
});
server.listen(8080);
// Create a Socket.IO instance, passing it our server
var socketserver = io.listen(server);
// Add a connect listener
socketserver.on('connection', function(socket){
socket.emit("server ready");
socket.on('test', function (msg) {
socket.broadcast.emit('TEST:', msg);
console.log(msg);
});
socket.on('user message', function (msg) {
socket.broadcast.emit('user message', msg);
console.log(msg);
});
});
client.js
$(document).ready(function() {
// Stuff to do as soon as the DOM is ready;
var socket = io.connect('http://localhost',{port:8080});
socket.on('server ready',function() {
messages.append("<li>Server Ready...</li>");
console.log("Server Ready");
});
// Add a connect listener
socket.on('connect',function() {
messages.append("<li>Connected...</li>");
console.log("connected");
socket.emit('test',"Just testing");
});
});
Serverは罰金開始しますが、私の問題は、server.jsがないことである。現時点では私は次のセットアップを持っていますsocket.emit( "server ready")を起動しないでください。行。クライアント側のコードは、この行私のサーバーの出力をテストするにterminal.appのように正常に動作します:
websocket received data packet 5:::{"name":"test","args":["Just testing"]}
私は何をしないのですか?なぜサーバー側のコンポーネントが起動しないのですか?
?多くのプロジェクトでは、私は1つのhtmlファイルを提供する必要があり、expressはそのような場合にはあまりにも多くの場合です。 – Purefan
おそらく、そこにあるすべてのsocket.ioチュートリアルが、 – Bobby