アプリケーションのプロセス間通信にWebSocketを使用したい(Daemon <-> WebGUIおよびDaemon <-> FatClientなど)。テスト中に、websocket.org(http://www.websocket.org/echo.html)のJavaScript WebSocketクライアントを介してローカルで実行されているWebソケットサーバー(ws:// localhost:1234)に接続しようとしました。
私の質問は今です:
なぜこれが可能ですか?ブラウザ(ここでは:LinuxのFF29)にクロスオリジンポリシーが実装されていませんか?
websocket.orgが悪かった場合、ローカルWSサーバーと通信して、ローカルホストから受信したすべてのメッセージを他のサーバーにリダイレクトしようとする可能性があるため、私は尋ねています。
ローカルWebSocketサーバーブラウザ邪悪なWebサーバー
ws:// localhost:1234、http://evil.tld
| | |
| | ------ [GET /] ---------> |
| | <----- [HTML + EvilJS] ---- |
| <------ [connect ws:// ..] ---- | |
| <---- [いくつかのコミュニケーション]-> | |
| | ---- [邪悪な前進] ----> |
| | |
ユースケース全体をテストしたわけではありませんが、websocket.orgによって提供されるJSからws:// localhostへの接続は確実に機能します。