gpt4 book ai didi

ios - JSON 解析并收到 : fatal error: unexpectedly found nil while unwrapping an Optional value

转载 作者:行者123 更新时间:2023-11-28 21:41:05 25 4
gpt4 key购买 nike

override func viewDidLoad() {
super.viewDidLoad()
let reposURL = NSURL(string: "https://maps.googleapis.com/maps/api/place/nearbysearch/json?key=AIzaSyC4BR5rZLNkeGChLr8N00BHZqBYqPdrgjg&location=43.690578,-79.342348&radius=400&types=cafe|bakery")
// 2
if let JSONData = NSData(contentsOfURL: reposURL!) {
// 3
if let json = NSJSONSerialization.JSONObjectWithData(JSONData, options: nil, error: nil) as? NSDictionary {
// 4
if let reposArray = json["items"] as? [NSDictionary] {
// 5
for item in reposArray {
repositories.append(Repository(json: item))
}
}
}
}
}

在第 5 行收到一个 exc_bad_instruction 错误,不知道为什么,它说我强制展开 nil 但 URL 正在工作,我可以在我的浏览器中毫无问题地打开它并查看所有 JSON 数据

最佳答案

使用 NSUTF8StringEncoding 对您的 URL 进行编码:

var urlstr = "https://maps.googleapis.com/maps/api/place/nearbysearch/json?key=AIzaSyC4BR5rZLNkeGChLr8N00BHZqBYqPdrgjg&location=43.690578,-79.342348&radius=400&types=cafe|bakery"

var escapedString = urlstr.stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding)

let reposURL = NSURL(string: escapedString!)
// 2
if let JSONData = NSData(contentsOfURL: reposURL!) {
// 3
if let json = NSJSONSerialization.JSONObjectWithData(JSONData, options: nil, error: nil) as? NSDictionary {
// 4
print(json)
if let reposArray = json["results"] as? [NSDictionary] {
// 5
for item in reposArray {
print(item)// You will get particular items
}
}
}
}

然后您将获得 JSON 响应。

在响应中没有像items这样的参数。

因此,在 print(json) 之后检查响应并通过参数获取数据。

希望对你有帮助。

关于ios - JSON 解析并收到 : fatal error: unexpectedly found nil while unwrapping an Optional value,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32043778/

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