如果网站没有响应,防止应用程序崩溃



我想知道是否有更安全的方法来处理JSON响应。这是我到目前为止的代码

func getJSON(urlToRequest: String) -> NSData{
    return NSData(contentsOfURL: NSURL(string: urlToRequest)!)!
}
func parseJSON(inputData: NSData) -> NSDictionary? {
    do {
        if let feed = try NSJSONSerialization.JSONObjectWithData(inputData, options: .MutableContainers) as? NSDictionary {
            // Success block...
            return feed
        }
    }
    catch {
        //return(error)
    }
    return nil
}

我打这个电话是为了检查是否有什么东西被退回

let returnedJSON:AnyObject
//Network present
if(returnedJSON){
     returnedJSON = parseJSON(getJSON("URL"))!
}

然而,我结束了错误

类型"AnyObject"不符合协议"BooleanType"

那么,在出现错误之后,还有什么更好的方法可以做到这一点吗?

一个小建议

首次返回NSData?(不强制展开)

func getJSON(urlToRequest: String) -> NSData?{
    return NSData(contentsOfURL: NSURL(string: urlToRequest)!)
}

然后检查是否为零

if(returnedJSON != nil){
}

最新更新