0
返回值我有一個函數:不能調用非功能型「JSON」的價值,如何從塊斯威夫特
func connectToWS(callback: (JSON)) -> Void {
let urlPath: String = "http://xxx.webservice.com"
let url: NSURL = NSURL(string: urlPath)!
let request: NSURLRequest = NSURLRequest(URL: url)
let session = NSURLSession.sharedSession()
let task = session.dataTaskWithRequest(request){
(data, response, error) -> Void in
if error != nil {
} else {
let json:JSON = JSON(data: data!)
// RETURN?
}
}
task.resume()
}
所有我想要做的是返回的NSDictionary JSON序列字典,當我調用這個函數。但似乎我不能,因爲我的JSON數據在dataTaskWithRequest塊中。我已經使用回撥嘗試,但它顯示了錯誤:
Cannot call value of non-function type 'JSON'
任何人都可以點我的方向來解決這個問題?
我正在使用SwiftyJSON作爲第三方庫。
感謝您的幫助。只是最後一個問題: 是connectToWS(){數據,在一個塊中的響應錯誤? –
是的。它的「封閉」更精確。如果'closure'是該函數的唯一參數,那麼這就是你如何編寫它的方法。 – Abhinav