我正在尝试使用以下代码连接到socket.io-client:
服务器:
// Load requirements
var http = require('http'),
io = require('socket.io');
// Create server & socket
var server = http.createServer(function(req, res){
// Send HTML headers and message
res.writeHead(404, {'Content-Type': 'text/html'});
res.end('<h1>Aw, snap! 404</h1>');
});
server.listen(8080);
io = io.listen(server);
// Add a connect listener
io.sockets.on('connection', function(socket) {
console.log('Client connected.');
// Disconnect listener
socket.on('disconnect', function() {
console.log('Client disconnected.');
});
});
客户:
console.log('1');
// Connect to server
var io = require('socket.io-client')
var socket = io.connect('localhost:8080', {reconnect: true});
console.log('2');
// Add a connect listener
socket.on('connect', function(socket) {
console.log('Connected!');
});
console.log('3');
我没有Connected控制台日志或Client Connected控制台日志,我也不知道为什么!该代码示例摘自另一个发布的问题:链接,我看不到该问题的任何解决方案...
假设您在服务器上使用的socket.io版本大于1.0,请更改以下内容:
// Add a connect listener
io.sockets.on('connection', function(socket) {
console.log('Client connected.');
// Disconnect listener
socket.on('disconnect', function() {
console.log('Client disconnected.');
});
});
对此:
// Add a connect listener
io.on('connection', function(socket) {
console.log('Client connected.');
// Disconnect listener
socket.on('disconnect', function() {
console.log('Client disconnected.');
});
});
您不想仅在已连接的套接字上监听此事件。您想在任何套接字上监听此事件,甚至是新创建的套接字。
另外,在Internet上的随机位置读取socket.io代码时,请务必小心。从v0.9到v1.0,有些事情发生了重大变化(我不知道这是否是其中之一)。通常,您应该始终始终先从socket.io文档站点开始,因为它始终代表最新版本。然后,如果要查看其他互联网参考,请确保仅使用2014年中以后的文章。如果您不了解文章的年代,最好不要在没有最新文章证实的情况下依赖它。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句