次の方法で共有


Java 用 Azure Core Netty HTTP プラグイン ライブラリ - バージョン 1.13.10

Azure Core Netty HTTP クライアントは、HTTP クライアント API の azure-core プラグインです。

作業の開始

前提条件

パッケージを組み込む

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 を参照してください。

共同作成

このリポジトリへの投稿の詳細については、 投稿ガイドを参照してください。

  1. フォーク
  2. 機能ブランチを作成する (git checkout -b my-new-feature)
  3. 変更をコミットする (git commit -am 'Add some feature')
  4. ブランチにプッシュする (git push origin my-new-feature)
  5. 新しい Pull Request を作成する

インプレッション数