Retrofit2 动态(静态)添加请求头Header

Retrofit提供了两个两种定义HTTP请求头字段的方法即静态和动态。静态头不能改变为不同的请求,头的键和值是固定的且不可改变的,随着程序的打开便已固定。

动态添加

@GET("/")
Call<ResponseBody> foo(@Header("Accept-Language") String lang);

@HeaderMap

@GET("/search")
Call<ResponseBody> list(@HeaderMap Map<String, String> headers);

静态添加

 1 @Headers("Cache-Control: max-age=640000")
 2 @GET("/tasks")
 3 Call<List<Task>> getDataList();
 4
 5 @Headers({
 6     "X-Foo: Bar",
 7     "X-Ping: Pong"
 8 })
 9 @GET("/")
10 Call(ResponseBody) getData(@Query("id") String id);

原文地址:https://www.cnblogs.com/ganchuanpu/p/8570218.html

时间: 2024-10-05 05:04:38

Retrofit2 动态(静态)添加请求头Header的相关文章

iOS UIWebview添加请求头的两种方式

1.在UIWebviewDelegate的方法中拦截request,设置request的请求头,废话不多说看代码: - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType { NSString *urlString = [[request URL]  absoluteS

Android Retrofit2&amp;OkHttp3添加统一的请求头Header

在使用Retrofit时,有时候需要设置Set-Cookie等请求头,如果每一个url都需要,那么直接来个拦截器就好了. 官方说明: OkHttp3下OkHttpClient的 List< Interceptor> interceptors()方法,返回的是一个不可编辑的列表,如果对其进行编辑会报出UnSupportedOperationException Interceptor的典型使用场景,就是对request和response的Headers进行编辑 如下图所示: 注意Header头,不

接口测试,添加请求头的时候,大小写一定要正确

今天同事碰到了一个问题,就是他用robot framework+requests写接口测试用例的时候,post一个json数据的时候,发送出去的数据一直是data=<empty>,明明有数据啊,通过log打印也是没问题. 最终发现是添加头的时候,将Content-Type写成了content-type. 我刚开始也没看出来问题在哪里,费了好长时间才搞定.说一下如何排查出的这个问题吧,以往写Content-Type的时候,还真没注意到大小写的问题,jmeter应该不区分的.于是今天一直没想到是这

Retrofit2 + OkHttp3设置Http请求头(Headers)方法汇总

在构建网络层时会遇到一个问题就是要手动配置Http请求的Headers,写入缓存Cookie,自定义的User-Agent等参数,但是对于有几十个接口的网络层,我才不想用注解配置Headers,目前网上很多文章的方法真对这两个版本都不是很适用,有的给出的方法已经被删除,有的方法会报出异常 :( 方法一: 在翻阅官方API文档整理后的方法如下: 1.  import okhttp3.Interceptor; 2.  import okhttp3.OkHttpClient; 3.  import o

给RabbitMQ发送消息时,设置请求头Header。

消费者 由于消费者那里,@Payload是接受的消息体,使用了@Header注解,需要请求头,生产者这边就要设置,如下代码: 这是RabbitTemplate中的converAndSend(exchang,routingKey,消息体,消息头)方法. @Override public void convertAndSend(String exchange, String routingKey, final Object message, final MessagePostProcessor me

springmvc添加请求头RequestHeader

@Controller @RequestMapping("/RequestHeader") public class RequestHeaderService { public final static String SUCCEEDD="show"; @RequestMapping(value="/testRequestHeader",method=RequestMethod.GET) public String testRequestHeade

ajax添加请求头(添加Authorization字段)

我们在发AJAX请求的时候可能会需要自定义请求头,在jQuery的$.ajax()方法中提供了beforeSend属性方便我们进行此操作. beforeSend: function(request) { request.setRequestHeader("Authorization", sessionStorage.getItem("Authorization")); } 使用起来非常简单. "我们这代的年轻人,很多是没有退路的.感到失败和望不到头的时候,

Spring Cloud之Feign 转发请求头(header参数)

在做接口请求时,我们经常会在header头中增加一些鉴权信息,如token 或 jwt,那么在通过fegin从A server去调用B server的接口时,如果B server的接口需要header信息,我们需要将A sever获取的header转发到B上. 解决方式 我们需要实现Feign提供的一个接口RequestInterceptor @Configuration public class FeignConfiguration implements RequestInterceptor{

重写为请求添加请求头信息的方法

本来这个话题想写大一些,但是觉得自己的思想境界比较浅,还是从自己谈起.每当在公司看到新来的员工拼命的加班的时候,我总想说两句,但是说了怕大家认为我的想法消极,所以又开不了口.只好在这里随笔一篇,如果看到了对你有用,说明我这篇随笔就是有用的. 1.身体健康是无数个0前面的那个1,即没有1,什么也没有.以我自己为例,在学校的时候我每天下午能够打上几个小时篮球都不会觉得累,毕业第一年没什么感觉,直到第四年的时候,缺少锻炼以及长期的加班,我得了严重的颈椎病.在08年那会,严重的时候大脑头晕脑涨,根本没法