【发布时间】:2017-01-28 15:36:03
【问题描述】:
我正在使用Moya、Moya_ModelMapper 和RxSwift 来执行网络请求。
这是我的示例代码:
let provider = RxMoyaProvider<MyEndpoint>()
let observable: Observable<RegistrationResponse> = provider.request(.register(firstName: "", lastName: "", email: "", password: "")).mapObject(type: RegistrationResponse.self)
observable.subscribe {
[weak self] (event: Event<RegistrationResponse>) in
switch event {
case .next(let response):
print(response)
case .error(let error):
print(error)
case .completed:
break
}
}
一切正常,但是当我从服务器收到 409 状态代码响应类型时,我不知道如何获取错误代码。
如果我打印错误,我会得到:
jsonMapping(Status Code: 409, Data Length: 0)
但我不知道如何通过代码获取此状态码。错误是 MoyaError,它是 Enum 类型。这是 MoyaError 的 source code。
谢谢!
【问题讨论】:
-
error.response.statuscode可以吗?由于响应确实包含状态码。并且错误包含响应。 -
(error as! MoyaError).response?.statusCode有效!非常感谢
标签: ios swift alamofire rx-swift moya