2014-05-02 27 views
6

ile Android 4.4 üzerinde benim sunucusuyla iletişim WebSocket'e gereken bir uygulama üzerinde çalışıyorum. Phonegap ile çalışıyorum, böylece tüm kodu tarayıcımda her şeyden önce çalıştırabilirim. o ... çalışması gerekir Android 4.4 Websockets Android'de yerel destek var beri bu kod ile WebSocket'e uyguladık:WebSocket'e PhoneGap

$(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); 
} 

Bu sadece benim tarayıcı (Chrome ve Firefox) içinde iyi çalışıyor. Ama ben android 4.4.2 ile Nexus 5 üzerinde Phonegap ile app başlarsanız alıyorum: 'ws: //192.168.1.131: 8080/.....' için WebSocket bağlantısı başarısız oldu: Beklenmeyen yanıt kodu: 403 '

ne yapmaya kaçırmış olabilir ya da ben yanlış yaptım ne olduğu hakkında bir öneriniz var mı?

+0

deneyin res.header ('Erişim-Control-Allow-Origin', "*") ekleyerek; sunucudaki işlevinizde. Cevabınız için ama hangi olmalıdır 'res' nesne – rishal

+0

Merhaba sayesinde anlamıyorum? – TobiasW

+0

Maalesef ben size sunucusu olarak node.js kullandığını sanıyordum. Mobil cihaz soketine iletişim kurmasına izin vermek için sunucudaki erişim denetim izin-kökenini eklemeniz gerekir. – rishal

cevap

0

cordova'ya yetkilendirilmiş olarak 192.168.1.131 sağlıyor musunuz?

Belki config.xml için eklemek denemelisiniz:

<access origin="192.168.1.131" /> 

detaylı bilgi için göz here atın. yardımcı

Umut :)