android 添加头参数,Retrofit添加header参数的几种方法

(1)使用注解的方式

添加一个Header参数

publicinterfaceUserService {

@Headers("Cache-Control: max-age=640000")

@GET("/tasks")

Call> getTasks();

}

添加多个Header参数

publicinterfaceUserService {

@Headers({

"Accept: application/vnd.yourapi.v1.full+json",

"User-Agent: Your-App-Name"

})

@GET("/tasks/{task_id}")

Call getTask(@Path("task_id")longtaskId);

}

(2)使用代码的方式,则需要使用拦截器

OkHttpClient.Builder httpClient =newOkHttpClient.Builder();

httpClient.addInterceptor(newInterceptor() {

@Override

publicResponse intercept(Interceptor.Chain chain)throwsIOException {

Request original = chain.request();

Request request = original.newBuilder()

.header("User-Agent","Your-App-Name")

.header("Accept","application/vnd.yourapi.v1.full+json")

.method(original.method(), original.body())

.build();

returnchain.proceed(request);

}

}

OkHttpClient client = httpClient.build();

Retrofit retrofit =newRetrofit.Builder()

.baseUrl(API_BASE_URL)

.addConverterFactory(GsonConverterFactory.create())

.client(client)

.build();

(3)使用注解的方式,但是Header参数每次提交的都不同,也就是动态的Header

publicinterfaceUserService {

@GET("/tasks")

Call> getTasks(@Header("Content-Range") String contentRange);

}

注意:以上都是在Retrofit2.0及以上使用的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值