我已经添加到我的项目SwiftyJSON.swift文件,我试图从网上获取一些数据。现在我的项目运行,但直到我试图从字典中获取json数组的行。我无法理解问题出在哪里,但我猜测它必须是非常愚蠢的,因为我刚刚开始学习迅速。iOS编程,获取JSON数据
我只是试图在控制台中打印来自该网址的所有电影的名称,并且在我设法实现此性能后,我将尝试获取电影的摘要,然后将它们放入TableView中。
import UIKit
class FirstViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
//grab the status code and check if the transfer was successful == 200
let requestURL: NSURL = NSURL(string: "https://itunes.apple.com/us/rss/topmovies/limit=50/json")!
let urlRequest: NSMutableURLRequest = NSMutableURLRequest(URL: requestURL)
let session = NSURLSession.sharedSession()
let task = session.dataTaskWithRequest(urlRequest) {
(data, response, error) -> Void in
let httpResponse = response as! NSHTTPURLResponse
let statusCode = httpResponse.statusCode
if (statusCode == 200) {
//sort through the stations key and cast the data into an array of dictionaries
do{
let json = try NSJSONSerialization.JSONObjectWithData(data!, options:.AllowFragments)
print("bbbbb")
// From here on, it doesn't print anything anymore
if let movies = json["entry"] as? [[String: AnyObject]] {
print(movies)
print("test")
for movie in movies {
if let name = movie["name"] as? String {
print("mmmm")
print("%@ (Built %@)",name)
}
}
}
}catch {
print("Error with Json: \(error)")
}
}
}
task.resume()
尝试打印出'json'字典的内容,通过''print(“json contents is \(json)”)'“在你试图获得'movies'之前”。我有兴趣找出如果真的有'入口',我猜是有的,但它可能嵌套在其他东西里。 –
通过观察这个,我会在黑暗中刺戳并说json没有一个叫做入口的关键字。如果你想强制把这个错误改成你想要的那样,它可能会让你知道发生了什么 –
@MichaelDautermann我刚刚在我试图获得电影的那一行之前添加了你的打印行,但它仍然没有打印任何东西,我在控制台上唯一的东西就是前面打印的bbbbb –