gpt4 book ai didi

swift - 使用 Alamofire + SwiftyJSON 获取 JSON 数组

转载 作者:可可西里 更新时间:2023-11-01 01:37:50 25 4
gpt4 key购买 nike

我真的是 Swift 的新手,抱歉,如果这是一个愚蠢的问题......似乎有很多关于这个的问题,但没有一个使用最新版本的 Alamofire

Alamofire.request(.GET, url)
.responseJSON { response in

let json = JSON(response.data!)
debugPrint(json)
self.delegate?.didReceiveAPIResults(json)
}

以及委托(delegate)的didReceiveAPIResults方法

func didReceiveAPIResults(results: JSON) {
dispatch_async(dispatch_get_main_queue(), {
self.tableData = results["items"].arrayObject!
self.appsTableView!.reloadData()
})
}

这是 JSON 响应:

{
"items": [
{
"id": 1,
"name": "Sample 1"
},
{
"id": 2,
"name": "Sample 2"
}
]
}

我希望 debugPrint 打印类似于 JSON 的内容,但它只是打印 unknown

如果我自己 debugPrint response.data,它似乎被编码了......

Optional(<7b226461 7461223a 5b7b2269 64223a36 2c226e61 6d6522......

然后我的 results["items"].arrayObject! 行有这个错误:

fatal error: unexpectedly found nil while unwrapping an Optional value

最佳答案

与其抓取 response.data,我建议抓取 response.result.value。当你执行 responseJSON 时,Alamofire 会为你解析 JSON,你应该可以随意获取这个已解析的对象。

Alamofire.request(.GET, url)
.responseJSON { response in
if let value = response.result.value {
let json = JSON(value)
self.delegate?.didReceiveAPIResults(json)
}
}

关于swift - 使用 Alamofire + SwiftyJSON 获取 JSON 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34075209/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com