2012-03-27 110 views
0

我有一个似乎无法工作的小应用程序。请帮忙。node.js和socket.io应用程序未运行

服务器:

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

app.listen(9002); 


io.enable('browser client minification'); 
io.enable('browser client etag'); 
io.enable('browser client gzip'); 
io.set('transports', [   
    'websocket' 
    , 'flashsocket' 
    , 'htmlfile' 
    , 'xhr-polling' 
    , 'jsonp-polling' 
]); 



console.log("listening on port 9002"); 


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

io.sockets.on('connection',function(socket){ 
    socket.emit('serverevent',{ name: 'server' }); 
    socket.on('firstevent',function(data){ 
     console.log(data); 
    }); 
    socket.on('disconnect', function() { 
     console.log("one client disconnected"); 
    }); 
}); 

客户

<html> 
<head> 
<script type="text/javascript" src="/socket.io/socket.io.js"></script> 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"></script> 
<script> 
    var socket=io.connect('http://localhost:9002'); 
    socket.on('serverevent', function(data){  
    console.log(data); 
    alert(data); 
    socket.emit('firstevent', { name: 'manu mehrotra' }); 
    }); 
$(function(){ 
    socket.emit('firstevent', { name: 'manu mehrotra' }); 
}); 
</script> 
</head> 

<body> 

</body> 

</html> 

什么也没有打印服务器日志或控制台上的连接,并没有什么返回由服务器向客户端在警告对话框中显示。

我在亚马逊ec2上运行这个东西。

感谢

回答

2

也许是因为你在听你的客户端在本地主机上。

+1

洛尔兹,这是我的一个愚蠢的错误...感谢很多人... – Manav 2012-03-27 01:07:19