Android HTTP multiipad/form-data要求プロトコル情報実現画像アップロード
1639 ワード
問題:Androidアプリケーションでは、ユーザー情報を記入したり、コメントを発表するなどの操作があり、「フォーム操作」(web form操作のようなもの)で画像をアップロードする機能が避けられない.この場合、Androidを使ったHTTPはPOSTとGETでは実現できない.解決方法:
Androidクライアントは、HTTP multiipad/form-dataをシミュレーションしてプロトコル情報を要求することで、画像のアップロードを実現します.
一、ファイルヘッダのタイプ
Map head = new HashMap<>();
head.put("Content-Type", "multipart/form-data");
二、画像コメントなどをファイルリストに入れる以下は例を挙げて複数の画像をファイルに入れるだけです.
List fileList=new ArrayList();
for(int i=0;i
三、http依頼 public static void post_file( final String url, final Map head, final Map param, List files, String name, okhttp3.Callback callback) {
OkHttpClient client = new OkHttpClient();
// form
MultipartBody.Builder requestBody = new MultipartBody.Builder().setType(MultipartBody.FORM);
if (files != null) {
for(int i=0;i