我有以下功能:prepare()
,返回NSMUtableArray
。当我尝试返回json
NSMutableArray
对象时,我收到以下错误:
'NSMutableArray' is not convertible to 'Void'
功能源代码:
func prepare() -> NSMutableArray {
let statusesShowEndpoint = "https://api.twitter.com/1.1/statuses/user_timeline.json"
let params = ["screen_name": "tikaDotMe"]
var clientError : NSError?
let request = Twitter.sharedInstance().APIClient.URLRequestWithMethod(
"GET", URL: statusesShowEndpoint, parameters: params,
error: &clientError)
if request != nil {
Twitter.sharedInstance().APIClient.sendTwitterRequest(request) {
(response, data, connectionError) -> Void in
if (connectionError == nil) {
var jsonError : NSError?
let json = NSJSONSerialization.JSONObjectWithData(data,
options: nil,
error: &jsonError) as NSMutableArray
//Error: 'NSMutableArray' is not convertible to 'Void'
return json
}
else {
println("Error: \(connectionError)")
}
}
}
else {
println("Error: \(clientError)")
}
return [""]
}
答案 0 :(得分:2)
问题是你试图从一个被定义为返回Void的闭包中返回json:
(response, data, connectionError) -> Void
编辑:正如@ Paulw11所提到的,你需要处理关闭中的数据,你不能从准备函数中返回它。