Java 用 Azure Core Netty HTTP プラグイン ライブラリ - バージョン 1.13.10
Azure Core Netty HTTP クライアントは、HTTP クライアント API の azure-core
プラグインです。
作業の開始
前提条件
- Java Development Kit (JDK) バージョン 8 以降。
パッケージを組み込む
BOM ファイルを含める
ライブラリの一般提供 (GA) バージョンに依存するには、azure-sdk-bom をプロジェクトに含めてください。 次のスニペットでは、{bom_version_to_target} プレースホルダーをバージョン番号に置き換えます。 BOM の詳細については、 AZURE SDK BOM README に関するページを参照してください。
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-sdk-bom</artifactId>
<version>{bom_version_to_target}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
次に、バージョン タグのない依存関係セクションに直接依存関係を含めます。
<dependencies>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-core-http-netty</artifactId>
</dependency>
</dependencies>
直接依存関係を含める
BOM に存在しない特定のバージョンのライブラリに依存する場合は、次のように直接依存関係をプロジェクトに追加します。
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-core-http-netty</artifactId>
<version>1.13.10</version>
</dependency>
主要な概念
例
次のセクションでは、最も一般的なクライアント構成シナリオの一部をカバーするいくつかのコード スニペットを示します。
単純なクライアントを作成する
ポート 80 を使用し、プロキシを持たない Netty HttpClient を作成します。
HttpClient client = new NettyAsyncHttpClientBuilder().build();
プロキシを使用してクライアントを作成する
プロキシを使用する Netty HttpClient を作成します。
HttpClient client = new NettyAsyncHttpClientBuilder()
.proxy(new ProxyOptions(ProxyOptions.Type.HTTP, new InetSocketAddress("<proxy-host>", 8888)))
.build();
HTTP/2 サポートを使用してクライアントを作成する
HTTP/1.1 プロトコルと HTTP/2 プロトコルの両方をサポートする Netty HttpClient を作成します。HTTP/2 が優先プロトコルです。
// Constructs an HttpClient that supports both HTTP/1.1 and HTTP/2 with HTTP/2 being the preferred protocol.
HttpClient client = new NettyAsyncHttpClientBuilder(reactor.netty.http.client.HttpClient.create()
.protocol(HttpProtocol.HTTP11, HttpProtocol.H2))
.build();
HTTP/2 のみをサポートする Netty HttpClient を作成することもできます。
// Constructs an HttpClient that only supports HTTP/2.
HttpClient client = new NettyAsyncHttpClientBuilder(reactor.netty.http.client.HttpClient.create()
.protocol(HttpProtocol.H2))
.build();
カスタムの最大チャンク サイズを使用してクライアントを作成する
カスタムの最大チャンク サイズを使用する Netty HttpClient を作成します。
// Constructs an HttpClient with a modified max chunk size.
// Max chunk size modifies the maximum size of ByteBufs returned by Netty (later converted to ByteBuffer).
// Changing the chunk size can positively impact performance of APIs such as Storage's download to file methods
// provided in azure-storage-blob, azure-storage-file-datalake, and azure-storage-file-shares (32KB - 64KB have
// shown the most consistent improvement).
HttpClient httpClient = new NettyAsyncHttpClientBuilder(reactor.netty.http.client.HttpClient.create()
.httpResponseDecoder(httpResponseDecoderSpec -> httpResponseDecoderSpec.maxChunkSize(64 * 1024)))
.build();
次のステップ
Azure Core を使用して構築された Azure ライブラリの使用を開始します。
トラブルシューティング
バグが発生した場合は、 GitHub の問題 を使用して問題を報告するか、 Azure Java SDK の StackOverflow をチェックアウトしてください。
ログ記録の有効化
Azure SDK for Java には、アプリケーション エラーのトラブルシューティングと解決の迅速化に役立つ一貫したログ記録のストーリーが用意されています。 生成されたログでは、最終状態に達する前のアプリケーションのフローがキャプチャされ、根本原因を特定するのに役立ちます。 ログ記録の有効化に関するガイダンスについては、ログ Wiki を参照してください。
共同作成
このリポジトリへの投稿の詳細については、 投稿ガイドを参照してください。
- フォーク
- 機能ブランチを作成する (
git checkout -b my-new-feature
) - 変更をコミットする (
git commit -am 'Add some feature'
) - ブランチにプッシュする (
git push origin my-new-feature
) - 新しい Pull Request を作成する