多文件(或多种数据类型)上传需要指定HTTP请求协议头的Content-Type字段为multipart/form-data setType(MultipartBody.FORM)让okhttp知道是多文件上传 addFormDataPart指定需要上传的各个部分 下例中上传了两个内容,第一个内容命名为‘title’,内容为纯文本‘wangshu’ ...
postFormSubmit(name, pwd);break;caseR.id.btn_download: downLoadFile();break; } }/*** Post异步提交:登录 * *@paramaccount *@parampassword*/privatevoidpostSubmit(String account, String password) { String url= "http://192.168.10.24:8881/Api/GetLoginInfo.ashx?"; BaseOkHttpClient.newBuilder()...
post 请求 -- form表单提交 OkHttpClient okHttpClient = new OkHttpClient.Builder() .connectTimeout(10, TimeUnit.SECONDS) .writeTimeout(10, TimeUnit.SECONDS) .readTimeout(20, TimeUnit.SECONDS) .build(); //post方式提交的数据 FormBody formBody = new FormBody.Builder() .add("t", "test"...
Okhttp上传图片方法,就像网页那样,使用Form的Post。 首先创建requestBody,然后Builder构建Query:最后Response返回服务器请求,最后把response.body().string()转换成String格式, 不算很难,不详解。 2. 这里是调用OkHttp上传
Headers.of("Content-Disposition", "form-data; name=\"" + key + "\""), RequestBody.create(null, params.get(key))); } } RequestBody multiBody=multiBuilder.build(); OkHttpClient okHttpClient=new OkHttpClient(); Request request=new Request.Builder().url(netUrl).post(multiBody).build()...
();FormBody formBody=newFormBody.Builder().add("a","1").add("b","2").build();Request request=newRequest.Builder().post(formBody).url("https://www.httpbin.org/post").build();//准备好请求的Call对象Call call=okHttpClient.newCall(request);call.enqueue(newCallback(){@Overridepublic...
post请求创建request和get是一样的,只是post请求需要提交一个表单,就是RequestBody。表单的格式有好多种,普通的表单是: RequestBody body = new FormBody.Builder() .add("键", "值") .add("键", "值") ... .build(); RequestBody的数据格式都要指定Content-Type,常见的有三种: application/x-www-form...
private void postDataWithParame() { OkHttpClient client = new OkHttpClient(); MultipartBody.Builder builder = new MultipartBody.Builder().setType(MultipartBody.FORM); builder.addFormDataPart("token",token);//传递键值对参数 builder.addFormDataPart("a","create_discover");//传递键值对参数 ...
void onSuccessful(Call call, String data); void onFailure(Call call, String errorMsg); } } 调用代码: public static void main(String[] args) { // get请求,方法顺序按照这种方式,切记选择post/get一定要放在倒数第二,同步或者异步倒数第一,才会正确执行 ...
至此,就完成了使用OkHttp库实现Android中的POST请求的流程。 总结 本文介绍了使用OkHttp库实现Android中的POST请求的流程和代码。首先,我们创建了OkHttpClient对象,并使用FormBody来封装POST请求的参数。然后,创建了Request对象,并将RequestBody对象传入。最后,通过Call对象发送请求,并通过Callback回调处理服务器返回的响应...