node.js和socket.io应用程序未运行
问题描述:
我有一个似乎无法工作的小应用程序。请帮忙。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上运行这个东西。
感谢
答
也许是因为你在听你的客户端在本地主机上。
洛尔兹,这是我的一个愚蠢的错误...感谢很多人... – Manav 2012-03-27 01:07:19