Novate
Novate copied to clipboard
取消请求传参问题
我想取消一个rxGet请求,根据你的注释,此方法返回一个Subscription
,那么此方法的第四个参数ResponseCallback<T, ResponseBody>
中的T类型只能够为Subscription
,并且其它类型如RxStringCallback
等其它类型都不能传了?那我只能够在onHandleResponse
方法中自己重新解析了。那么里面的onNext
方法好像没有什么作用了吧?那为什么返回值不直接写成Subscription
了?
你是要知道取消回调结果吗?
不是的。我只要取消一个网络请求就可以了。
你demo中RxApiManager.get().add("test", subscription);
,
然后RxApiManager.get().cancel("test");
rxGet的返回类型T与参数ResponseCallback<T, ResponseBody>
保持一致,而取消请求都是通过Subscription来操作。所以这个T的类型只能够为Subscription了。这个T的类型是不是太限制了?
rxDelete方法的第三个参数Map<String, T> maps
,你方法内部有把这个maps转成Map<String, Object>,但暴露出去的这个T与第三个参数ResponseCallback<T, ResponseBody> callBack
中的T必须保持一致,好像也太限制了。