2013-01-05 115 views
0

每當我執行我的代碼時,我都會在控制檯收到它已連接的消息,而不是在此之後沒有任何事情發生。連接到服務器後,客戶端代碼不響應

下面是代碼:

服務器端

var app = require('express')() 
    , server = require('http').createServer(app) 
    , io = require('socket.io').listen(server); 

server.listen(80); 

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

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

    console.log('m connected'); 

    socket.emit('news', { hello: 'm joooon ' }); 
    socket.on('my other event', function (data) { 
    console.log(data); 
    }); 
}); 

客戶端

<!DOCTYPE html> 
<html> 

<head> 
<script src="/socket.io/socket.io.js"></script> 
<script> 
    var socket = io.connect('http://localhost'); 
    socket.on('news', function (data) { 
    console.log(data); 
    socket.emit('my other event', { my: 'data' }); 
    }); 
</script> 
</head> 
<body> 

    <div id="lo">magudi</div> 
</body></html> 
+0

這看起來應該是工作。有些事情要嘗試 - 對於客戶端,嘗試添加一個'socket.on('connect',function(){...});'並且看看你是否從中得到了任何東西。還有瀏覽器在控制檯中拋出任何錯誤?也可以嘗試刪除「http:// localhost」,因爲它應該沒有它,或者將其改爲「http:// localhost:80」,因爲那就是它應該是的。 – Loourr

+0

@Loourr正如你所說我做的...... 但沒有任何事情發生 socket.on('connect',function(){...});沒有迴應 – Aabhi

回答

0

在客戶端,你不聽的端口。

var socket = io.connect('http://localhost:80');