2016-07-14 2 views
0

Это мой server.js:Socket.io не работает

var app = require('express')(); 
var server = require('http').Server(app).listen(8080,function(){ 
console.log('working'); 
    }); 
var io = require('socket.io')(server); 

app.get('/',function(req,res){ 
res.sendFile(__dirname+'/index.html'); 
}); 

io.on('connection',function(socket){ 
console.log('someone connected'); 
}); 

Это мой index.html:

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <meta charset="UTF-8"> 
    <title></title> 
</head> 
<body> 
<script src="node_modules/socket.io-client/socket.io.js"></script> 
<script src="http://code.jquery.com/jquery-1.11.1.js"></script> 


<script> 
    var socket = io(); 


</script> 

</body> 
</html> 

Я думаю, что я сделал это правильно, как на своем сайте, но когда Я запускаю его на узле и смотрю на localhost: 8080 Я не могу видеть предложение «кто-то связанный» в консоли. Где проблема или что может быть проблемой?

+0

вы используете ' server.js' в клиенте ?? – Lekhnath

+0

socket = io.connect(); :) –

+0

не изменился – herovoe

ответ

2

настроить свой код на моем сервере, но изменил исходный сценарий файла index.html к:

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

я могу получить его регистрации someone connected на сервере.

Это взято из верхнего примера на socket.io website. Я думаю, что разрешение на путь файла должно быть обработано где-то в исходном коде сервера socket.io.

Смотрите также: Can't find socket.io.js

0

Попробуйте это Его работа для меня

Server.js (на стороне сервера)

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

app.get('/', function(req, res) { 
    res.sendFile(__dirname + '/index.html'); 
    console.log(__dirname + " dir name"); 
}); 


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

    socket.on("join", function(name) { 
    }); 

    socket.on('disconnect', function() { 

    }); 
}); 

http.listen(8080, function() { 
    console.log('listening on *:8080'); 
}); 

В стороне клиента

var socket = io.connect("http://localhost:8080"); 

    socket.on('connect', function() { 
     //connect 
    }); 

socket.emit("join", 'user1'); 
Смежные вопросы