Okhttpアップロードファイル
1756 ワード
参考サイト:https://blog.csdn.net/ljw124213/article/details/52317518
private void uploadfile(){ OkHttpClient client=new OkHttpClient();
//一種:パラメータ要求体FormBody paramsBody=new FormBody.Builder() .add(「desc」>「小魚」).build();
//二つ:ファイル要求audio/wavapplication/octet-stream MediaType type=MediaType.parse(“audio/wav”);//「text/xml;charset=utf-8」File file=new File(Environment.getExternalStorageDirectory()、「李華.wav」);
//3種類:混合パラメータとファイル要求RequestBody multipartBody=new MultipartBody.Builder() .Settype(MultipartBody.ALTERNATive)/同じ効果10//.addPart(Headers.of(//“Content-Disposition”,//“form-data; name=“desc””)//,paramsBody) .addPart(Headers.of("Content-Disposition","form-data;name="file";filename="+file.getName(),fileBody//のような効果.addFormDataPart("desc","小魚").addFormDataPart(“upload_user”,“15702486968”)//.addFormDataPart("file","李華.wav",fileBody)/ファイルを追加する.build(); Request request=new Request.Builder().url(“https://XXXXX/uploadfile/upload.up”) .addHeader(“User-Agent”,“android”) .header(“Content-Type”,“text/html; charset=utf-8;”) .post(multipartBody)/パラメータ、ファイル、または混合を転送し、変更すればリクエスト体でよい.build(); client.newCall(request).enqueue(new Callback() { @Override public void onFailure(Call call, IOException e) {
private void uploadfile(){ OkHttpClient client=new OkHttpClient();
//一種:パラメータ要求体FormBody paramsBody=new FormBody.Builder() .add(「desc」>「小魚」).build();
//二つ:ファイル要求audio/wavapplication/octet-stream MediaType type=MediaType.parse(“audio/wav”);//「text/xml;charset=utf-8」File file=new File(Environment.getExternalStorageDirectory()、「李華.wav」);
// File file = new File("path");//file .
RequestBody fileBody=RequestBody.create(type,file);
//3種類:混合パラメータとファイル要求RequestBody multipartBody=new MultipartBody.Builder() .Settype(MultipartBody.ALTERNATive)/同じ効果10//.addPart(Headers.of(//“Content-Disposition”,//“form-data; name=“desc””)//,paramsBody) .addPart(Headers.of("Content-Disposition","form-data;name="file";filename="+file.getName(),fileBody//のような効果.addFormDataPart("desc","小魚").addFormDataPart(“upload_user”,“15702486968”)//.addFormDataPart("file","李華.wav",fileBody)/ファイルを追加する.build(); Request request=new Request.Builder().url(“https://XXXXX/uploadfile/upload.up”) .addHeader(“User-Agent”,“android”) .header(“Content-Type”,“text/html; charset=utf-8;”) .post(multipartBody)/パラメータ、ファイル、または混合を転送し、変更すればリクエスト体でよい.build(); client.newCall(request).enqueue(new Callback() { @Override public void onFailure(Call call, IOException e) {
}
@Override
public void onResponse(Call call, Response response) throws IOException {
Log.i("xxx","1、 "+response.message());
if(response.isSuccessful()){
Log.i("xxx","2、 "+response.body().string());
}
}
});
}