2016-05-09 10 views
1

Auf meinem Server erlaubt Ich bin mit Gorilla Web-Buchse in unterwegs und ich versuche, mit folgendem JavaScript-Code von phonegap Anwendung zu verbinden:Wie lösen oder Bypass-Fehler websocket: Herkunft nicht

var conn = new WebSocket("ws://IP:8080/ws"); 

aber ich bekomme diesen Fehler: websocket: Herkunft nicht erlaubt auf meinem Server.

Gibt es etwas, was ich tun kann, um das zu lösen?

Vielleicht eine andere Phonegap-Bibliothek oder Fix/Update für diese Art von Verbindung?

Ich habe viele Beispiele von Phonegap-Skript versucht, aber keiner von ihnen hat funktioniert.

Ich möchte dieses Gorilla WebSocket-Plugin auf meinem Server verwenden, aber wie die Dinge jetzt stehen, ist das nicht möglich. Danke

+0

können Sie eine http-Dump? insbesondere im Vergleich zu Nicht-Phonegap-Client –

+0

@JiangYD - wie kann ich das tun? – CroiOS

+0

tcpdump in Ihrem Server, um den Port zu erfassen Ihr Server hören –

Antwort

2

Die Lösung ist - Ihre eigene CheckOrigin Funktion in Ihrem websocket.Upgrader zu implementieren {}, weil Standard ein überprüft Server-Host und akzeptieren Client-Verbindungen nur von demselben Host

+0

Ist das in Ordnung, wenn wir vom Sicherheitspunkt aus schauen? Ich verwende auf meinem Server Sequenz und Token-Autorisierung. – CroiOS

+0

Origin Header, der Checker kann manuell eingestellt werden, so ja, ich glaube nicht, dass es großen Einfluss auf die Sicherheit haben wird – Vadyus

+0

Was ist Ihr Rat, sollte ich mit socket.io gehen (welche Seite ist im Moment :)) oder ich kann mit Web-Socket bleiben? – CroiOS