私はこれに関する解決策を見つけませんでした。 Jetty
はまだこの機能をサポートしていないようです。私は間違っているかもしれないので、私を教えてください。プロキシを使用するようにJetty WebSocketクライアントを設定する
私は非常に単純なJava
クライアントを持っており、Java
サーバに接続しています。localhost:8080
です。企業のプライベートネットワークで何が見つかるかをシミュレートするために、それらの間に透過的なプロキシを追加したいと思います。
私はこれに関する解決策を見つけませんでした。 Jetty
はまだこの機能をサポートしていないようです。私は間違っているかもしれないので、私を教えてください。プロキシを使用するようにJetty WebSocketクライアントを設定する
私は非常に単純なJava
クライアントを持っており、Java
サーバに接続しています。localhost:8080
です。企業のプライベートネットワークで何が見つかるかをシミュレートするために、それらの間に透過的なプロキシを追加したいと思います。
更新日:月、2017
突堤9.4.0以降以降、ネイティブ桟橋WebSocketClientは桟橋HttpClientを介して、プロキシをサポートしています。
これは、HttpClientをそのプロキシ構成とともに宣言し、それをthe WebSocketClient constructorに渡して使用することによって機能します。
にのみ、以下で動作します:
に
オリジナル回答
、桟橋ネイティブのWebSocketクライアント、またはJSR-356(javax.websocket)クライアントの実装のいずれかのためのプロキシのサポートはありません。
このサポートは、(サーブレット4を追跡している)桟橋10に予定され、そしてに対して等しいサポートを有するように桟橋全体クライアントライブラリスイートの完全な再加工をもたらすであろう。
桟橋上の既存のWebSocketクライアント実装が原因JSR-356のサポート要件に、スタンドアロンのです。
既存のWebSocketクライアントは、既存のJetty HttpClientをJetty 9.xに利用しません。それができれば、プロキシサポートは、おそらく非常に限られたシナリオのセットの下で動作する可能性があります。
WebSocketをサポートしている既存のプロキシがほとんど存在しないため(実際には、HTTP/1.1のアップグレードがサポートされていません)、これは優先度の低い機能リクエストです。 Jetty独自のサーバー側のプロキシでも、現在HTTP/1.1のアップグレードされた接続はサポートされていません。あなたは透明プロキシを使用しようとしている場合
これは遠いプロキシにメッセージを送信できますが、Jettyで自分自身を作成しないということですか?詳細な答えをありがとう。 –
How HTML5 Web Sockets Interact With Proxy Serversで、図2によると、あなたは、クライアント側のプロキシサポートを必要とする必要はありません。一方、明示的プロキシでは、プロキシをサポートするためにクライアントライブラリが必要です。
プロキシが透過的であれば、Jetty WebSocketクライアントは問題ありません。
何のJavaクライアントですか?どのようなプロキシ? http/1.1? http/2? http/1.1上のwebsocket? http/2上のWebSocket?トランスペアレント?逆?サーバ側?クライアント側? –
Jettyを使用したWebSocket Javaクライアント。タイトルを参照してください。現在HTTP/1.1を使用していますが、私の問題にどう影響するかわかりません。今のところ、私は透明なプロキシをセットアップしたいだけです。 –
Upvoting。現在の状態では、この質問は貴重な答えをもたらします。 –