【发布时间】:2016-01-08 15:43:06
【问题描述】:
我不知道我需要一个可选类型是什么意思。我试图做 Do/catch 但它似乎仍然不起作用。
do {
let json = try NSJSONSerialization.JSONObjectWithData(data!, options:NSJSONReadingOptions.MutableContainers) as! NSDictionary
if let parseJSON = json {
let userId = parseJSON["userId"] as? String
if (userId != nil) {
NSUserDefaults.standardUserDefaults().setObject(parseJSON["userFirstName"], forKey: "userFirstName")
NSUserDefaults.standardUserDefaults().setObject(parseJSON["userLastName"], forKey: "userLastName")
NSUserDefaults.standardUserDefaults().setObject(parseJSON["userId"], forKey: "userId")
NSUserDefaults.standardUserDefaults().synchronize()
// take user to a protected page
/*
let mainPage = self.storyboard?.instantiateViewControllerWithIdentifier("MainPageViewController") as! MainPageViewController
let mainPageNav = UINavigationController(rootViewController: mainPage)
let appDelegate = UIApplication.sharedApplication().delegate
appDelegate?.window??.rootViewController = mainPageNav
*/
let appDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
appDelegate.buildNavigationDrawer()
} else {
// display an alert message
let userMessage = parseJSON["message"] as? String
let myAlert = UIAlertController(title: "Alert", message: userMessage, preferredStyle: UIAlertControllerStyle.Alert);
let okAction = UIAlertAction(title: "OK", style: UIAlertActionStyle.Default, handler:nil)
myAlert.addAction(okAction);
self.presentViewController(myAlert, animated: true, completion: nil)
}
}
} catch {
print(error)
}
【问题讨论】:
标签: ios json swift swift2 ios9