2016-07-11 33 views
2

我想用Retrofit2和RxJava執行請求如何添加Authorization頭與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(「授權:代碼)的註釋,但我不知道如何改變」代碼「

+0

什麼意思是如何在運行時更改「代碼」。您可以將攔截器添加到Okhttp並用作Retrofit的客戶端。 –

+0

@YasinKaçmaz我的意思是訪問OAuth 2的令牌 –

回答

4

我找到了答案: 請求標頭可以使用@Header標註動態更新。必須向@Header提供相應的參數。如果值爲null,標頭將爲省略。否則,toString將被調用該值,並使用結果。

@GET("user") 
Call<User> getUser(@Header("Authorization") String authorization) 
相關問題