javascript - 带有 Phonegap 的 Android 4.4 上的 Websocket

标签 javascript android cordova websocket

我正在开发一个需要 Websocket 与我的服务器通信的应用程序。我正在使用 Phonegap,所以我可以首先在我的浏览器中运行所有代码。 由于 Android 4.4 Websockets 在 Android 中获得了 native 支持,所以它应该可以工作...... 我已经用这段代码实现了 Websocket:

$(document).ready(function () {
    console.log('websocketready');
    startwebsocket();
});
var ws;

function startwebsocket() {
    ws = new WebSocket('ws://192.168.1.131:8080/.....');

    ws.onopen = function () {
        console.log("Websocket Ready!!");
    }
    ws.onclose = function () {
        console.log("Websocket Closed!!");
    }
    ws.onerror = function () {
        console.log("Websocket Error!!");
    }
    ws.onmessage = function (data) {
        console.log('getvalue : ' + data.data);
    }
}

function sendMessage(temp) {
    ws.send(temp);
}

这在我的浏览器(Chrome 和 firefox)中运行良好。但是如果我在我的 Nexus 5 上使用 Phonegap 启动应用程序和 android 4.4.2 我得到:'WebSocket 连接到 'ws://192.168.1.131:8080/.....' 失败:意外的响应代码:403 '

您对我可能错过的事情或做错的事情有什么建议吗?

最佳答案

您是否提供 192.168.1.131 作为 cordova 的授权来源?

也许您应该尝试将其添加到您的 config.xml 中:

<access origin="192.168.1.131" />

看看here了解更多信息。

希望有所帮助:)

关于javascript - 带有 Phonegap 的 Android 4.4 上的 Websocket,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23427913/

相关文章:

javascript - 使用 redux 依赖项发送 React 包

javascript - 将文本包裹在字符串后的 span 中 - 使用 jquery/javascript

javascript - 具有多个下拉列表的 Angular 过滤器

php - 如何在phonegap中连接MySQL数据库?

android - AdMob 未在 ionic /Angular 应用中加载广告

Cordova插件相机,如何使用相机滤镜?

javascript - CodeMirror 简单模式 - 正则表达式未按预期突出显示

android - 在客户端设备上登录 android 应用程序

android - 安卓视频通话解决方案

java - 如何在android中的图像上放置黑色透明