-3
@IBOutlet weak var weather: UILabel!
@IBOutlet weak var city: UITextField!
@IBAction func button(sender: AnyObject) {
let urlpath = "api.worldweatheronline.com/free/v2/weather.ashx?q=\(city.text)&format=json&num_of_days=5&key=c7fc4c9444ae2ddcee02a0893d5f0"
let url = NSURL(string: urlpath)
let session = NSURLSession.sharedSession()
let task = session.dataTaskWithURL(url, completionHandler: { (data, response, error) -> Void in
if (error != nil) {
self.weather.text="error"
}else{
var jsonResult = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.MutableContainers, error: nil) as NSDictionary
println(jsonResult)
}
})
task.resume()
}
애플리케이션을 실행할 때 콘솔에 오류가 발생합니다. 내가 믿는 데이터를 올바르게 직렬화하고 있지만 JSON 직렬화 된 데이터를 NSDictionary에 표시 할 수 없습니다. 콘솔에 사전을 인쇄하려고 시도했지만 여전히 오류로 표시됩니다. 여기서 뭐가 잘못 됐는지 이해하도록 도와주세요.JSON에서 Swift의 NSDictionary로 데이터를 다운로드하는 중 오류가 발생했습니다.
여기에는 하나의 심각한 문제가 있습니다 :'error : nil)' –
"콘솔에 오류가 있습니다"- 그건 쓸모없는 문장입니다. 오류를 정확하게 인용해야합니다. JSON 데이터를 사전에 가져 오려면 사전에 역 직렬화해야합니다. –
그리고 JSON은 어떻게 생겼습니까? –