【发布时间】:2016-05-07 09:46:57
【问题描述】:
我遇到了一个偶尔会抛出 HTTP 403 错误的 API,并且响应正文可以以 json 的形式提供一些额外的信息,但是对于我来说,我似乎无法将这些信息恢复出来来自 Alamofire 响应对象。如果我通过 chrome 访问 API,我会在开发人员工具中看到信息。这是我的代码:
Alamofire.request(mutableURLRequest).validate().responseJSON() {
(response) in
switch response.result {
case .Success(let data):
if let jsonResult = data as? NSDictionary {
completion(jsonResult, error: nil)
} else if let jsonArray = data as? NSArray {
let jsonResult = ["array" : jsonArray]
completion(jsonResult, error: nil)
}
case .Failure(let error):
//error tells me 403
//response.result.data can't be cast to NSDictionary or NSArray like
//the successful cases, how do I get the response body?
}
我已经查询了几乎所有附加到响应的对象,但在 HTTP 错误的情况下,它似乎并没有返回响应正文。是否有解决方法或我在这里缺少的东西?
【问题讨论】:
标签: ios swift httpresponse alamofire http-status-code-403