2016-07-13 13 views
0

Lassen Sie mich damit beginnen zu sagen, ich bin neu zu Maven und Anlegesteg. Wie auch immer, ich habe mein websocket funktioniert, wenn ich auf Windows bin und localhost als WebSocket-Adresse benutze. Dann kopierte ich den Code auf meinen AWS-Server und änderte die Websocket-Adresse im Browser auf AWS DNS. Als ich versuchte, das zu starten, bekam ich einen Fehler 403 (verbotene Erlaubnis) und der Handshake ist fehlgeschlagen. Überall, wo ich online geschaut habe, heißt es, dass ein 403-Fehler etwas ist, das Sie manuell Ihrem Websocket-Server hinzufügen. Gibt es irgendeine Dateierlaubnis, die ich auf der Serverseite vermisse? Jetty sagt, dass es übrigens auf der Server-Seite läuft.Jetty Websocket JSR 356 Fehler 403

+0

Was passiert, wenn Sie DNS, dass AWS ändern 127.0.0.1? Funktioniert es – error2007s

+0

Nun, ich bekomme nicht mehr 403. Jetzt bekomme ich diesen Fehler mit der Verwendung von. WebSocket-Verbindung fehlgeschlagen: Fehler beim Verbindungsaufbau: net :: ERR_CONNECTION_REFUSED –

+0

Ich glaube nicht, dass das richtig sein kann. Ich möchte eine Anlegestelle auf dem Server und nicht auf der lokalen Maschine laufen. 127.0.0.1 ist localhost der Maschine des Browsers –

Antwort

0

403 Forbidden ist eine Antwort, die während eines HTTP/1.1 Connection-Upgrades auf Websocket angezeigt wird und die /origin/ Information ist nicht normal.

Weitere Informationen über die Websocket-Spezifikation finden Sie unter RFC6455: Origin Considerations.

Umsetzung der Jetty wird nicht automatisch eine 403 Forbidden auf eigene Ausgabe wird Sie der einzige Weg, aus Jetty Server werden sehen, ob Ihre benutzerdefinierten WebSocketCreator hat verwenden gewählt sendForbidden()

+0

Ich habe meinem websocket Server nicht gesagt, den Ursprung zu überprüfen, also sollte das nicht das Problem sein. –

+0

jedes zwischengeschaltete System kann auch die Überprüfung des Ursprungs durchführen. Nehmen Sie nicht an, dass der Jetty-Server diese Antwort an Sie zurücksendet. –

+0

Nachdem ich den ganzen Tag damit verbracht habe, das zu erforschen, denke ich, dass das Problem von AWS kommt, aber ich konnte nicht wirklich weiter kommen. Weißt du, was es sein könnte? Ich habe bereits Port 8080 in der Sicherheitsgruppe geöffnet. –