在 RxMoya 上没有被触发
Not getting triggered on RxMoya
谁能告诉我为什么第一个代码被触发而第二个代码没有被触发? (假设“someEndPoint”工作正常)
let provider = MoyaProvider<MyApiService>()
provider.rx.request(.someEndPoint).subscribe(onSuccess: { response in
print("triggered")
}, onError: { error in
}).disposed(by: disposeBag)
MoyaProvider<MyApiService>().rx.request(.someEndPoint).subscribe(onSuccess: { response in
print("not triggered")
}, onError: { error in
}).disposed(by: disposeBag)
两个代码的区别只是是否使用“let”。我无法在第二个代码中打印“未触发”,并且看不到第二个代码的任何网络日志。我很想知道这是为什么。
提前致谢。
在第一个示例中,您正在创建 并保留 提供商。
在第二个示例中,您正在创建提供程序,然后调用 request
但您没有保留提供程序,因此它会在发出请求后立即解除分配,并且在服务器满足请求之前很久。
网络请求需要一段时间才能返回,提供者需要保持存在直到它返回。
谁能告诉我为什么第一个代码被触发而第二个代码没有被触发? (假设“someEndPoint”工作正常)
let provider = MoyaProvider<MyApiService>()
provider.rx.request(.someEndPoint).subscribe(onSuccess: { response in
print("triggered")
}, onError: { error in
}).disposed(by: disposeBag)
MoyaProvider<MyApiService>().rx.request(.someEndPoint).subscribe(onSuccess: { response in
print("not triggered")
}, onError: { error in
}).disposed(by: disposeBag)
两个代码的区别只是是否使用“let”。我无法在第二个代码中打印“未触发”,并且看不到第二个代码的任何网络日志。我很想知道这是为什么。
提前致谢。
在第一个示例中,您正在创建 并保留 提供商。
在第二个示例中,您正在创建提供程序,然后调用 request
但您没有保留提供程序,因此它会在发出请求后立即解除分配,并且在服务器满足请求之前很久。
网络请求需要一段时间才能返回,提供者需要保持存在直到它返回。