我开始学习如何使用 socket.io,过去几天我一直在努力解决这个问题,但我没有得到两件事。
为什么在启动服务器并加载我各自的 url (localhost:8088) 后我的警报需要很长时间才能显示出来?
为什么我看不到socket.io的服务器代码?例如,在下一段代码中,我从未在控制台中看到来自“我的其他事件”的数据。
服务器(app.js):
var app = require('express')()
, server = require('http').createServer(app)
, io = require('socket.io').listen(server);
server.listen(8088);
app.get('/', function (req, res) {
res.sendfile(__dirname + '/index.html');
});
io.sockets.on('connection', function (socket) {
socket.emit('news', {
hello: 'world'
});
socket.on('my other event', function (data) {
console.log(data);
});
});
客户端(index.html):
<script src="/socket.io/socket.io.js"></script>
<script>
var socket = io.connect();
socket.on('news', function (data) {
console.log(data);
alert(data.hello);
socket.emit('my other event', {
my: 'data'
});
});
</script>