我继承了一个使用Moya的RxSwift项目。我的任务是将请求从一个后端移动到另一个后端。两个后端的s 设置都很好,因为它们在其他地方被广泛使用。TargetType
原始请求如下所示:
return accessProvider.rx
.request(request)
.asObservable()
.debug()
.flatMapLatest({ [weak self] (response) -> Observable<Bool> in
//does some processing of the JSON
return just(true)
})
.catchError({ (error) -> Observable<Bool> in
return just(false)
})
这返回就好了,我得到了数据。
我的新请求完全相同,但唯一的区别是提供者和请求使用的是第二个TargetType
。对于这个,请求永远不会发生(与查尔斯确认)。我已经检查过了TargetType
,它看起来很好,执行非 Rx Moya 请求工作正常,我订阅它的 Rx 请求也是如此。
为什么使用 flatMapLatest 不起作用?
我是 Rx 的新手,对 Moya 也很陌生,因此感谢您提供任何帮助。
编辑:第一个提供者的调试消息:
Refresh token -> subscribed
Refresh token -> subscribed
Refresh token -> Event next(Status Code: 200, Data Length: 773)
第二:
Refresh token -> subscribed
没有其他的