昨日、El Capitanベータ2およびXcode 7に更新しました-ベータは必須です。だから私はSwift 2にアプリを更新しました、そして新しいエラーがjson文字列に来ます。これは私のコードです:
let jsonData:NSDictionary = NSJSONSerialization.JSONObjectWithData(urlData!, options:NSJSONReadingOptions.MutableContainers ) as! NSDictionary
これはエラーです:Call can throw , but it is not marked with 'try' and the error is not handled
これは、NSError
を使用するよりも、エラーを報告するための推奨される方法であるため、do/catch
ブロックでラップする必要があります。
do {
let jsonData = try NSJSONSerialization.JSONObjectWithData(urlData!, options:NSJSONReadingOptions.MutableContainers ) as! NSDictionary
// use jsonData
} catch {
// report error
}
「トライ!」等号の後。
let jsonData:NSDictionary = try! NSJSONSerialization.JSONObjectWithData(urlData!, options:NSJSONReadingOptions.MutableContainers ) as! NSDictionary
その後、catch句やthrows宣言は必要ありません。障害から本当に回復できない場合は、そうすることをお勧めします。
詳細については、次を参照してください: https://developer.Apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programming_Language/ErrorHandling.html
var UserDict = NSJSONSerialization.JSONObjectWithData(responseData, options:nil, error: &error) as? NSDictionary
println("== \(UserDict)")