2016-07-11 1 views
2

내가 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)