OKHttp 发送 Post 请求:Json、Form 和 URL 传参
- Post+Json请求:
OkHttpClient client = new OkHttpClient();
MediaType JSON = MediaType.parse('application/json; charset=utf-8');
JSONObject jsonObject = new JSONObject();
jsonObject.put('key1', 'value1');
jsonObject.put('key2', 'value2');
RequestBody body = RequestBody.create(JSON, jsonObject.toString());
String url = 'http://www.example.com';
Request request = new Request.Builder()
.url(url)
.post(body)
.build();
Response response = client.newCall(request).execute();
- Post+form请求:
OkHttpClient client = new OkHttpClient();
FormBody.Builder builder = new FormBody.Builder();
builder.add('key1', 'value1');
builder.add('key2', 'value2');
RequestBody body = builder.build();
String url = 'http://www.example.com';
Request request = new Request.Builder()
.url(url)
.post(body)
.build();
Response response = client.newCall(request).execute();
- 支持url传参:
OkHttpClient client = new OkHttpClient();
HttpUrl.Builder urlBuilder = HttpUrl.parse('http://www.example.com').newBuilder();
urlBuilder.addQueryParameter('key1', 'value1');
urlBuilder.addQueryParameter('key2', 'value2');
String url = urlBuilder.build().toString();
MediaType JSON = MediaType.parse('application/json; charset=utf-8');
JSONObject jsonObject = new JSONObject();
jsonObject.put('key3', 'value3');
RequestBody body = RequestBody.create(JSON, jsonObject.toString());
Request request = new Request.Builder()
.url(url)
.post(body)
.build();
Response response = client.newCall(request).execute();
原文地址: https://www.cveoy.top/t/topic/oj5E 著作权归作者所有。请勿转载和采集!