我正在开发一个需要 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/