Apache-httpclient-multipart-upload
提供:Dev Guides
Apache HttpClient-マルチパートアップロード
HttpClientを使用して、マルチパートアップロードを実行できます。つまり、大きなオブジェクトを小さなパーツにアップロードできます。 この章では、単純なテキストファイルをアップロードすることにより、HTTPクライアントでのマルチパートアップロードを示します。
一般に、マルチパートアップロードには3つのパートが含まれます。
- アップロードの開始
- オブジェクトパーツのアップロード
- マルチパートアップロードの完了
HttpClientを使用したマルチパートアップロードの場合、以下の手順に従う必要があります-
- マルチパートビルダーを作成します。
- 必要なパーツを追加します。
- ビルドを完了し、マルチパートHttpEntityを取得します。
- 上記のマルチパートエンティティを設定して、リクエストをビルドします。
- リクエストを実行します。
HttpClientライブラリを使用してマルチパートエンティティをアップロードする手順は次のとおりです。
ステップ1-HttpClientオブジェクトを作成する
ステップ2-FileBodyオブジェクトを作成する
ステップ3-MultipartEntityBuilderを作成する
ステップ4-モードを設定する
手順5-必要なさまざまなパーツを追加する
メソッド* addTextBody()、addPart()、および addBinaryBody()を使用すると、単純なテキスト、ファイル、ストリーム、およびその他のオブジェクトを *MultipartBuilder に追加できます。 これらの方法を使用して、目的のコンテンツを追加します。
ステップ6-単一のエンティティの構築
ステップ7-RequestBuilderオブジェクトを作成する
クラス RequestBuilder は、パラメーターを追加して要求を作成するために使用されます。 要求のタイプがPUTまたはPOSTの場合、URLエンコードされたエンティティとして要求にパラメーターを追加します。
- post()*メソッドを使用して、(POSTタイプの)RequestBuilderオブジェクトを作成します。 そして、リクエストの送信先のUriをパラメーターとして渡します。
ステップ8-エンティティオブジェクトをRequestBuilderに設定する
ステップ9-HttpUriRequestを構築する
ステップ10-リクエストを実行する
- execute()*メソッドを使用して、前の手順で作成したリクエストを実行します(このメソッドへのパラメーターとしてリクエストをバイパスします)。
例
次の例は、HttpClientライブラリを使用してマルチパートリクエストを送信する方法を示しています。 この例では、ファイルを基にしたマルチパートリクエストを送信しようとしています。
出力
実行すると、上記のプログラムは次の出力を生成します-