問題タブ [java-http-client]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
9235 参照

java - Java http クライアントで「ホスト」ヘッダーをカスタマイズする方法

これが私のコードです:

その結果、上記のコードが送信することがわかります。

ご覧のとおり、2 つのヘッダー (URI からのヘッダーと指定したヘッダー) を送信しますが、URI からのヘッダーではなく、指定したヘッダーHostを送信したいと考えています。Hostこのクライアントで可能ですか?

編集:Java 11では、さらに悪化します(client.send行を:に変更する必要がありますclient.send(request, HttpResponse.BodyHandlers.ofString());):

そのヘッダーをカスタマイズするにはどうすればよいですか (仮想ホストのテストに必要)?

私も試してみましたがsetHeader、まったく同じ問題が発生しました(ダブルHostヘッダーまたは例外のいずれか)。

編集: JDK のバグを報告しました。

0 投票する
4 に答える
3733 参照

java - チャンクが到着したときに java.net.http を使用して、チャンクされた HTTP 応答をどのように読み取って出力しますか?

java.net.httpJava 11 では、 HTTP 要求を行うための新しいパッケージ が導入されています。一般的な使用法では、かなり簡単です。

私の質問はjava.net.http、各チャンクがクライアントによって受信されるときに、チャンクされた応答をどのように処理するのですか?

java.http.netBodySubscriber私が欲しいもののように見えるリアクティブが含まれていますが、それがどのように使用されているかの例が見つかりません。

http_get_demo.py

以下は、到着時にチャンクを出力する Python 実装です。java.net.http で同じことをしたいと思います。

HttpGetDemo.java

完全を期すために、java.net.http を使用してブロック リクエストを作成する簡単な例を次に示します。

HttpAsyncGetDemo.java

そして、非ブロッキング/非同期リクエストを作成する例を次に示します。