我的节点服务器+套接字客户端出现问题。我的本地主机服务器工作得很好。
但是。。。当我将socket.io客户机(节点)连接到外部服务器(例如:www.myserver.com:3000)时,它无法工作。
我没有收到任何数据。(消息变量)
这是我的示例代码:
var io = require("socket.io-client");
var requestHTTP = require("request");
var socket = io('http://myserver.com:3000');
var room = "game881";
console.log('test simple socket '+room+'');
socket.on('news', function (data) {
console.log(data);
socket.emit('conectado', { my: 'Conectado!' });
});
socket.on('connect', function () {
socket.emit('room', room);
console.log('Conectando a ' + room);
});
socket.on('message', function (data) {
var json = data.message;
json = JSON.parse(json);
console.log(json);
});+
为什么不接收任何数据?
科尔斯?我已经试过了。是否使用端口?
:)谢谢!
嗯。。。我解决了我的问题。我用这个。
在node.js中使用socket.io设置服务器-服务器SSL通信
以前的答案对我来说并不合适。require('https').GlobalAgent始终>未定义。
进行了一些搜索,并在文档(https://nodejs.org/api/Tls.html)中找到了rejectUnauthorized参数。不确定它是否与SocketIO相关,但不知何故,它似乎可以与自签名证书一起工作:
var socket=IO.connect('//YourHost:8000',{secure:true,rejectunAuthorized:false})
secure:true可能是可选的,但无论如何我喜欢强制执行它。