使用不同的网络连接时,iOS客户端未连接到Socket.IO吗?

时间:2018-08-06 23:29:39

标签: ios node.js socket.io

我最近开始使用Socket.IO,直到今天再也没有遇到任何问题。我始终使用iOS客户端测试连接,但是我使用同一Wi-Fi网络(在我的房屋内部)连接到服务器。今天是我第一次尝试在户外连接(使用3G移动网络连接),但是Socket.IO完全不响应。这是我的代码:

服务器:

var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);

http.listen(4000, '0.0.0.0', function(){
  console.log('Listening on *:4000');
});

客户:

var socketManager:SocketManager = SocketManager(socketURL: URL(string: "http://myIpAddress:4000")!)
self.socketManager.defaultSocket.on(clientEvent: .connect) { (data, ack) in
    // Do stuff
})
self.socketManager.defaultSocket.connect()

因此,就像我说的一样,相同的Wi-Fi连接可以正常工作,不同的连接无法响应。我在客户端检查了日志,日志没有超过Handshaking...。我关闭了Macbook的防火墙,假设那可能是阻止客户端连接的原因,但是不幸的是,这也没有用。有人对这个有经验么?如果是这样,此问题的最常见原因是什么?

我对使用Socket.IO还是很陌生,所以如果这个问题听起来很荒谬,我感到很抱歉。我有一种感觉,就是我可能错过了服务器端代码中一些非常基本和简单的内容,但是我不知道在哪里看。

0 个答案:

没有答案
相关问题