【问题标题】:Can't connect on local server无法连接本地服务器
【发布时间】:2016-04-01 07:29:47
【问题描述】:

我正在ionic 开发应用程序,但在设备上运行时无法连接到套接字服务器。

在开发(通过ionic serve)时,我已设法将我的应用程序(port:8100)连接到本地节点服务器(port:9000),我没有遇到 cors 问题,一切正常。

客户端看起来像这样:

socket = new io.connect('http://192.168.1.106:9000');
socket.on('reconnect_attempt',function() {
      alert('crap');
});

PS:上面的代码是我自己的记忆,但是我知道我已经提供了ip和端口

无论服务器是否正常工作,我仍然会收到警报...

我还检查了应用程序的清单,它具有适当的权限: android.permission.INTERNET

我还添加了一个 js 错误处理程序来检查是否存在 js 错误:

window.onerror = function (errorMsg, url, lineNumber) {
    alert(errorMsg);
}
var MyApp = angular.module('scotch-todo', ['ionic']);
...

我有一个小错误并修复了它(所以处理程序可以工作)但现在什么都没有捕获......

【问题讨论】:

    标签: android ionic-framework socket.io


    【解决方案1】:

    如果我理解正确,您可以在 PC 上进行开发时连接,但现在在您的物理设备上进行测试时。

    从 Cordova v4 开始,他们更改了默认行为,因此它不会连接到其自己的 WebView 页面之外的任何地址。有一个cordova白名单插件,可让您连接到白名单中的地址列表

    http://docs.ionic.io/docs/cordova-whitelist

    【讨论】:

    • 由于无法测试您的建议,我稍后会查找,谢谢您的回复
    • 它就像一个魅力,非常感谢!!!。但现在我有错误:Uncaught TypeError: Cannot read property'byteLenght' of undefined。将调试并返回
    猜你喜欢
    • 2017-12-09
    • 2016-11-15
    • 2018-10-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-29
    • 2016-06-30
    • 2014-06-14
    相关资源
    最近更新 更多