dポイントプレゼントキャンペーン実施中!

あるAPIを実行しようとしているのですが担当者不在のため質問させていただきたく思います。
javaにてあるAPIを実行するときに画像ファイルをリクエストパラメーターとして送信しようとしています。
つまり下記URLのfileパラメータに相当する文字列を作成しようとしております。
http://www.exe.api?file=xxxyyyyzzz

fileパラメータは  「マルチパートデータ+Base64」
の形式で送信するらしいのですがここでいうマルチパートデータってどいういう状態
(Javaでいうところのどういう型)のことでしょうか。
現在、Struts2を使用しているのですがサーバー側ではクライアントから送信されてきた画像ファイルを
Fileオブジェクトとして受け取っておりFileオブジェクトをBase64文字列に変換して上記のAPIを
実行してみたのですがどうもうまくいかなかったので質問してみました。

A 回答 (1件)

APIをどのように呼んでいるのかはわかりませんが、


普通にApache commonsのHttpClinetを利用しているなら

HttpClient client = new HttpClient();
PostMethod post = new PostMethod("http://www.exe.api");

Part[] parts = new Part[] { new FilePart(file.getName(), file) };
post.setRequestEntity(new MultipartRequestEntity(parts, post.getParams()));

で送信できるんじゃないでしょうか。

ちなみにGETメソッドではファイルアップロードはできないとおもいます。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
さっそく試してみたいと思います。

お礼日時:2013/01/19 04:08

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!