Alamofire 多个 URLS 错误处理在一处
Posted
技术标签:
【中文标题】Alamofire 多个 URLS 错误处理在一处【英文标题】:Alamofire multple URLS error handling at one place 【发布时间】:2017-08-12 12:40:04 【问题描述】:我正在使用 Alamofire,我的服务器会发送错误,例如身份验证失败,这对于大多数 API 来说都很常见,我如何才能仅在原地处理此问题。 因为错误需要在所有响应中进行相同的处理。
【问题讨论】:
你有没有得到任何解决方案? 【参考方案1】:您可以编写一个函数来处理所有这些错误,如下所示:
func stautsHandler(_ response:HTTPURLResponse?, data:Data?, error:NSError?)
if response?.statusCode == 400
print("bad url")
else if response?.statusCode == 401
print("unauthorized")
else if response?.statusCode == 403
print("Forbidden")
else if response?.statusCode == 404
print("file not found")
else if response?.statusCode == 500
print("Problem connecting server: 500")
else if response?.statusCode == -1005
print("Lost Network Connectivity")
else if response?.statusCode == 408
print("Connection Error: Please try again later")
else if error?.code == -1001
print("Connection Error: Please try again later")
else if error?.code == -1009
prrint("Connection Error: Please try again later")
您可以将来自 alamofire 的响应、错误、数据传递给此方法。调用该方法如下:
if response.response?.statusCode == 200
//HANDLE YOUR RESPONSE
else
stautsHandler( response.response, data: response.data as Data?, error: response.result.error as NSError?)
【讨论】:
以上是关于Alamofire 多个 URLS 错误处理在一处的主要内容,如果未能解决你的问题,请参考以下文章