一、背景
有的服务端的api只支持json格式的数据,不支持表单格式的数据,所以就需要客户端发送数据的时候指定为json格式。
二、代码实现
- 获取MediaType对象,类型为application/json,字符集为utf-8
- 通过RequestBody.create()方法创建JSON请求主体
- 创建请求对象,需要往请求头里添加参数也是在这里添加
- 执行请求
OkHttpClient okHttpClient = new OkHttpClient();
RequestBody requestBody = RequestBody.create(MediaType.parse("application/json; charset=utf-8"), json);
Request request = new Request.Builder()
.url(url)
.addHeader("key", "value")
.post(requestBody)
.build();
okHttpClient.newCall(request).enqueue(new Callback() {
@Override
public void onResponse(Call arg0, Response response) throws IOException {
}
@Override
public void onFailure(Call arg0, IOException arg1) {
}
});
|