okhttpclient 添加多个header
时间: 2023-08-11 09:39:08 浏览: 189
在使用 OkHttpClient 发送请求时,可以通过 Request.Builder 来构建请求,可以通过 addHeader(String name, String value) 方法来添加一个 header。如果想要添加多个 header,则可以连续调用多次 addHeader 方法,如下所示:
```java
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("http://www.example.com")
.addHeader("header1", "value1")
.addHeader("header2", "value2")
.addHeader("header3", "value3")
.build();
Response response = client.newCall(request).execute();
```
在这个例子中,我们添加了三个 header,分别是 header1、header2 和 header3。可以根据需要添加更多的 header。
相关问题
OkHttp添加多个header头
当我们需要添加多个header头时,可以使用Request.Builder的多次调用addHeader方法来实现。例如,我们可以使用以下代码来添加两个header头信息:
```
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://www.example.com")
.addHeader("Authorization", "Bearer token")
.addHeader("User-Agent", "OkHttp Example")
.build();
Response response = client.newCall(request).execute();
```
在上述代码中,我们通过多次调用addHeader方法来添加两个header头信息,分别是名为"Authorization"和"User-Agent"的header头。这样,我们就可以在请求中添加多个header头信息,以满足不同的需求。
OkHttpClient
使用OkHttpClient发送POST请求的示例代码如下:
```
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"key\":\"value\"}");
Request request = new Request.Builder()
.url("http://www.example.com")
.post(body)
.addHeader("Content-Type", "application/json")
.build();
Response response = client.newCall(request).execute();
```
这段代码将发送一个POST请求,请求体为一个json字符串,并在请求头中设置了Content-Type为application/json。
如果你需要在请求中添加更多的请求参数,可以使用OkHttp的FormBody来构造请求体。
```
OkHttpClient client = new OkHttpClient();
FormBody formBody = new FormBody.Builder()
.add("param1", "value1")
.add("param2", "value2")
.build();
Request request = new Request.Builder()
.url("http://www.example.com")
.post(formBody)
.build();
Response response = client.newCall(request).execute();
```
这里使用的是 FormBody.Builder 类来构造请求体,其中 add() 方法可以添加请求参数,最后调用 build() 方法构造出 FormBody 对象。
阅读全文