当我在连接(‘socket.on’)期间记录‘socket.on’对象时,我得到了以下信息:_peername: { address: '::1', family: 'IPv6', port: 57535 }
如何在插座连接过程中将族更改为IPv4?
发布于 2015-05-12 13:43:02
我在测试中发现,如果我在客户端使用
var socket = io('http://localhost:8000', { transports: ['websocket']});
socket.handshake.address
返回::1
如果我使用
var socket = io('http://server_ip:8000', { transports: ['websocket']});
socket.handshake.address
返回::ffff:ipv4address
发布于 2018-06-17 03:33:26
创建http实例时,请确保将连接绑定到IPv4地址。示例:
const app = require('express')();
const http = require('http').Server(app);
const io = require('socket.io')(http);
http.listen(8000, '0.0.0.0', function(){
console.log('listening on *:8000');
});
这应该能起到作用。:)
发布于 2016-08-09 20:57:47
这应该会在IPv4上收听;试一试,让我知道...
var net = require('net');
var server = net.createServer();
server.on('connection', handleConnection);
server.listen({
host: 'localhost',
port: 8000,
exclusive: true
}, function() {
console.log('server listening to %j', server.address());
});
输出:
server listening to {"address":"127.0.0.1","family":"IPv4","port":8000}
https://stackoverflow.com/questions/30167422
复制相似问题