操作请求头
您可以使用@Headers
注解为一个方法设置静态的请求头.
@Headers("Cache-Control: max-age=640000")
@GET("widget/list")
Call<List<Widget>> widgetList();
@Headers({
"Accept: application/vnd.github.v3.full+json",
"User-Agent: Retrofit-Sample-App"
})
@GET("users/{username}")
Call<User> getUser(@Path("username") String username);
注意, 请求头不会相互覆盖. 所有同名的请求头都会包含在请求中.
可以使用@Header
注解来动态更新请求头. 并且必须向@Header
提供相应的参数. 如果参数值为空, 则该请求头将会被忽略. 如果参数值不为空, 则会调用该值的toString
并使用其结果.
@GET("user")
Call<User> getUser(@Header("Authorization") String authorization)
对于所有请求都需要添加的请求头, 可以使用OkHttp interceptor来指定.