私のプロジェクトにSwiftyJSON.swiftファイルを追加しました。ウェブからデータを取得しようとしています。今私のプロジェクトが実行されますが、私が辞書のjsonから配列を取得しようとしている行までです。私はどこに問題があるのか理解できませんが、私はちょうど始めに素早く勉強しているので、それは非常にばかげたものでなければならないと推測しています。iOSプログラミングでJSONデータを取得する
私はこのURLからのすべてのムービーの名前をコンソールに表示しようとしています。このパフォーマンスを達成するために管理した後、ムービーの要約を取得してから、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()
「映画」を取得しようとする直前に、 "print(" json contents is \(json) ")' 'を介して' json'辞書の内容を出力してみてください。実際には「エントリ」があるのでしょうか?私はそこにあると推測していますが、それはおそらく他のものの中に入れ子になっているでしょう。 –
これを見て、私は暗闇の中で刺し、jsonにはエントリというキーがないと言います。 –
@MichaelDautermann私はムービーを取得しようとする前にプリントラインを追加しましたが、それでも何も印刷されません –