Retrofit+RxJava2 是目前比较火的框架,公司的代码也集体升级了,但是最近确发现了一个bug,就是如果后台只返回一个响应码,而不返回body的情况下,会出现java.lang.NullPointerException: Null is not a valid element的bug ,看了一下官网,好像是Rxjava2 的onNext()需要返回一个body,所以就有点无奈了。
目前的做法有三种方式:
(1)让后台返回一个body
(2)不要使用Observable<ResponseBody>作为返回值,改用Call<ResponseBody>作为返回值。
(3)将Observable<ResponseBody>改为Observable<Response<Void>> 作为返回值(最为推荐)