[英]RxJava ignore onNext
我正在使用Retrofit調用url,但我不在乎結果。 無論如何,有沒有忽略onNext方法?
目前,我正在使用:
getRetrofit().create(UserAPI.class)
.doSomething(a, b)
.subscribeOn(Schedulers.newThread())
.subscribe(t -> {}, Handler::handlerError);
如您所見, t -> {}
不執行任何操作,而我想將其減少為:
getRetrofit().create(UserAPI.class)
.doSomething(a, b)
.subscribeOn(Schedulers.newThread())
.subscribe(null, Handler::handlerError);
但是得到錯誤
java.lang.IllegalArgumentException: onNext can not be null
可以從Retrofit
接口返回Completable而不是Observable
。 它完全滿足您所需的目的。
我認為,如果您也想進行錯誤處理,那么在訂閱可觀察對象時,沒有辦法避免onNext()
實現。 另外,您可以創建一個Observer
並在您的subscribe
調用中重用它,但是您仍然需要實現onNext()
行為。
例:
Observer errorObserver = Observers.create(t -> {}, Handler::handleError);
getRetrofit().create(UserAPI.class)
.doSomething(a, b)
.subscribeOn(Schedulers.newThread())
.subscribe(errorObserver);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.