【发布时间】:2015-08-21 19:13:26
【问题描述】:
我正在尝试使用 Alamofire 从返回 JSON 数组的端点检索数据。我可以成功地获取数据(请参阅println() 成功的代码)但是它无法解析为以下数组:if let trackArrayData = data as? NSArray - 它正在触发println 正在触发的语句,但是它返回空。
提前致谢,代码如下:
func retrieveTrackArray(genre: String, completionHandler: (NSArray?, NSError?) -> Void) -> Self {
let urlRequest = NSURLRequest(URL: NSURL(string: ApiService.apiEndpoint + genre)!)
var trackArray:NSArray = []
Alamofire.request(.GET, urlRequest, parameters: nil, encoding: .URL)
.response { (request, response, data, error) in
//todo handle other response codes
if error == nil && response?.statusCode == 200 {
println(data); //data is populated Optional(<5b223334 31313438 3238222c 22333934 36373334 33222c22 32303036)
if let trackArrayData = data as? NSArray {
trackArray = trackArrayData
println(trackArray) //returns empty: ()
}
} else {
//todo handle error here
}
completionHandler(trackArray, error)
}
return self
}
【问题讨论】: