当使用rxjava 1.x时,我习惯返回Observable< VoID>处理来自改造的空响应:
@POST( "login" )Observable<VoID> getToken( @header( "Authorization" ) String authorization, @header( "username" ) String username, @header( "password" ) String password );
但是因为rxjava 2.x不能用VoID发出任何东西,所以处理那些空响应有什么好的做法吗?
解决方法:
Completable是为这种情况设计的.它可用since RxJava 1.1.1.来自官方文档:
Represents a deferred computation without any value but only indication for completion or exception. The class follows a similar event pattern as Reactive-Streams: onSubscribe (onError|onComplete)?
所以只需更改方法的返回类型:
@POST("login")Completable getToken(@header("Authorization") String authorization, @header("username") String username, @header("password") String password);
并重写您的订阅者,例如:
apimanager.getToken(auth, name, pass) ... .subscribe(() -> { //success }, exception -> { //error });
总结 以上是内存溢出为你收集整理的android – 使用retrofit和rxjava 2.x处理空响应全部内容,希望文章能够帮你解决android – 使用retrofit和rxjava 2.x处理空响应所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)