Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/106.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Socket.io在桌面safari上工作&;chrome,但不是手机_Android_Ios_Iphone_Node.js_Socket.io - Fatal编程技术网

Android Socket.io在桌面safari上工作&;chrome,但不是手机

Android Socket.io在桌面safari上工作&;chrome,但不是手机,android,ios,iphone,node.js,socket.io,Android,Ios,Iphone,Node.js,Socket.io,我正在使用socket.io在服务器和html5客户端之间建立通信,在桌面和iPhone模拟器上的safari上一切正常。但是,当我尝试从任何iOS甚至android设备上运行客户端时,客户端无法建立连接 使用web inspector,我无法在我的ios7设备上输出控制台错误,但成功获取了一个资源列表,其中XHR下有一个项目试图连接到服务器ip地址,但在大约2到3分钟后失败(变为红色) 我的iOS设备是iOS 7.03(iPhone4),我使用的是node v0.10.21和socket.io

我正在使用socket.io在服务器和html5客户端之间建立通信,在桌面和iPhone模拟器上的safari上一切正常。但是,当我尝试从任何iOS甚至android设备上运行客户端时,客户端无法建立连接

使用web inspector,我无法在我的ios7设备上输出控制台错误,但成功获取了一个资源列表,其中XHR下有一个项目试图连接到服务器ip地址,但在大约2到3分钟后失败(变为红色)

我的iOS设备是iOS 7.03(iPhone4),我使用的是node v0.10.21和socket.io v0.9.16 我还使用ip地址进行连接,因此我不确定是否存在相同的域限制

以下是客户提供的相关部分:

<script src="http://xx.xx.xx.xx:port/socket.io/socket.io.js"></script>
var socket =  io.connect("http://xx.xx.xx.xx:port");

socket.on('connect', function() {
    console.log("connected");
}

socket.on('disconnect', function() {
    console.log("disconencted");
}

socket.on('message', function(data) {
    console.log("rcved:"+ data*emphasized text*);
}
我还要指出,当我在服务器端启用完整日志记录时,不会尝试连接,因为连接是通过移动设备进行的,只有桌面设备和iOS模拟器


任何关于修复或如何寻求此问题解决方案的建议都是值得赞赏的

结果证明是防火墙问题:|

桌面电脑在VPN上,移动电话不在VPN上 这就解释了这个问题


我觉得自己很笨,但我会把它留在这里,以防它能帮助别人检查同样的问题

你做了什么?为您的手机设置VPN?如果这解决了您的问题,您可以将您的回答标记为正确的,以便查找此问题的人可以看到问题已解决。
var io = require('socket.io').listen(12321).set('log level', 0);
var ConnectionHandler = require('./handler.js');


io.sockets.on('connection', function (socket) {
new ConnectionHandler(socket);
});