我是RxJava的新手。我的經驗主要來自那些教程: Here和here。RxJava:知道什麼時候可觀察完成並返回布爾值可以對調用者進行查看
現在,我發現自己處於一種與Retrofit2進行API調用的情況,該調用將返回Obesrvable<AccessToken>
。客戶端將如下調用這個服務:
public Observable<TokenResult> authenticateWithClientCredentials() {
return authService.authenticate("client_credentials").take(1);
}
其中一個名爲Authenticator
類將調用#authenticateWithClientCredentials()
從客戶端。
我想達成什麼是從Authenticator
類返回Observable<Boolean>
,一旦API調用完成,即內部onComplete()
,表明訪問令牌已被提取和Authenticator
類中成功地保存在緩存中。
我試過defer
話務員,但我仍然迷路。
編輯
我知道我可以在參數傳遞迴調,而不是Rx的想法,以取代舊的經典回調方法?
謝謝你的回答,但不完全是我想要的。 #authenticateWithClientCredentials不是Authenticator類中的方法,它是Client類中的方法。 Authenticator將調用authenticateWithClientCredentials並緩存令牌,之後,我希望Authenticator返回Observable以指示令牌已成功設置在緩存中。 –
@MotassemJalal,已更新 – azizbekian
您能否向我解釋什麼是(以及爲什麼)Completable更受歡迎? –