android - 如何使用 Retrofit2 + RxJava 添加授权 header

标签 android retrofit retrofit2

我想使用 Retrofit2 和 RxJava 执行请求

public static Observable<Post> getPostsAround(Location location, int offset, int limit) {
    if(api==null) {
        new RestService();  //initialize API in constructor
    }
    return api.getPostsAround(location.getLatitude(),location.getLongitude(),offset,limit)
            .flatMapIterable(posts -> posts);   //transform Observable<List<Post>> to Observable<Post> which emits posts onNext
}

我尝试了@Headers("Authorization: code) 注解,但我不知道如何在运行时更改"代码"。

最佳答案

我找到了答案: 可以使用 @Header 注释动态更新请求 header 。必须向@Header 提供相应的参数。如果该值为空,则标题将被省略。否则,将对该值调用 toString,并使用结果。

@GET("user")
Call<User> getUser(@Header("Authorization") String authorization)

关于android - 如何使用 Retrofit2 + RxJava 添加授权 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38315908/

相关文章:

android - retrofit2 从mysql中获取数据并显示在listview上

android - 改造中的多个排队导致内存不足错误?

使用改造异步请求的 JavaFX 应用程序退出速度非常慢

android - 修改url查询

android - 使用 Retrofit 批量请求

android - 无法解析方法订阅 Retrofit Rxjava android

android - 在不切割的情况下在微调器中显示长字符串

Android Google map 连接(不显示 map )

java - 这个 "date": "2014-08-20 00:00:00 -0500"? 的时间格式是什么

android - worker 经理的自定义约束