如果我的链接没有返回数据,我如何签入swiftyJSON, 我收到此错误:致命错误:在解包可选值时意外发现nil
var URLString = mylink
URLString = URLString.stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding)!
let url = NSURL(string: URLString)!
let task = NSURLSession.sharedSession().dataTaskWithURL(url) {(data, response, innerError) in
let jsonData = NSData(contentsOfURL: url)! as NSData? //>> here is the error fatal error: unexpectedly found nil while unwrapping an Optional value
let readableJson = JSON(data: jsonData!, options: NSJSONReadingOptions.MutableContainers, error: nil)
let jjson = readableJson[0]
let ID = jjson["Title"]
})
}
task.resume()
答案 0 :(得分:0)
你应该避免强行解开"!"
。
试试这个
func foo(urlAsString:String) {
guard let
urlAsStringEscaped = urlAsString.stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding),
url = NSURL(string: urlAsStringEscaped)
else { fatalError() }
let task = NSURLSession.sharedSession().dataTaskWithURL(url) {(data, response, error) in
if let data = data where error == nil {
let json = JSON(data: data)
let id = json[0]["Title"].string
}
}
task.resume()
}