我是iOS开发人员的新手。我只是想问一下,当我使用get方法附加第三方库Alamofire数据即将到来但不是以正确的Json形式时,每个身份的键值都为空。 请帮我这里是我的代码:
let headers = ["Authorization":"","Accept": "application/json"]
Alamofire.request(.GET,requestString,headers:headers,encoding: .JSON)
.responseJSON { response in
print(response)
print(response.request)
答案 0 :(得分:0)
试试这个。
Alamofire.request(.GET, url, parameters: parameter as? [String : AnyObject]).responseJSON { (response: Response<AnyObject, NSError>) in
if error == nil {
print(response.result.value)
}
}
答案 1 :(得分:0)
当您致电responseJSON
时,它会为您解析JSON。因此,如果JSON是一个字典数组(如您的其他一个问题所示),那么response.result.value
将不包含原始JSON,而是包含数组和字典的嵌套结构。您可以通过展开来检索此数据(例如,使用if let
或guard let
):
Alamofire.request(requestString, headers: headers)
.responseJSON { response in
guard let dictionaries = response.result.value as? [[String: AnyObject]] else {
print(response.result.error)
return
}
// do something with the array of dictionaries, e.g. to show the names
for dictionary in dictionaries {
if let name = dictionary["name"] as? String {
print(name)
} else {
print("Name not found")
}
}
}