Android OKHttp添加参数 [英] Android OKHttp adding params
本文介绍了Android OKHttp添加参数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何将参数附加到OkHttp Request.builder?
How is it possible to append params to an OkHttp Request.builder?
//request
Request.Builder requestBuilder = new Request.Builder()
.url(url);
我已经管理了添加标头,但没有管理参数.
I've managed the add header but not params.
推荐答案
以下是有关如何使用okhttp进行发布请求(okhttp3)的完整示例.
Here is a complete example on how to use okhttp to make post request (okhttp3).
以表单正文形式发送数据
To send data as form body
RequestBody formBody = new FormBody.Builder()
.add("param_a", "value_a")
.addEncoded("param_b", "value_b")
.build();
将数据作为多部分正文发送
To send data as multipart body
RequestBody multipartBody = new MultipartBody.Builder()
.setType(MultipartBody.FORM)
.addFormDataPart("fieldName", fileToUpload.getName(),RequestBody.create(MediaType.parse("application/octet-stream"), fileToUpload))
.build();
以json正文形式发送数据
To send data as json body
RequestBody jsonBody = RequestBody.create(MediaType.parse("application/json; charset=utf-8"),
jsonObject.toString());
现在创建请求
Request request = new Request.Builder()
.addHeader("header_a", "value_a") // to add header data
.post(formBody) // for form data
.post(jsonBody) // for json data
.post(multipartBody) // for multipart data
.build();
Response response = client.newCall(request).execute();
** fileToUpload是java File类型的对象
** fileToUpload is a object of type java File
**客户端是OkHttpClient类型的对象
** client is a object of type OkHttpClient
这篇关于Android OKHttp添加参数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文