Swift:无法序列化Json响应
我正在使用会话发出http请求。这是我的密码:Swift:无法序列化Json响应,swift,nsurlsession,nsurl,nsjsonserialization,nsmutableurlrequest,Swift,Nsurlsession,Nsurl,Nsjsonserialization,Nsmutableurlrequest,我正在使用会话发出http请求。这是我的密码: let task = session.dataTaskWithRequest(request){ (data, response, error) -> Void in if error != nil { print(error?.description) } else { do { print("data recived : \(data)")
let task = session.dataTaskWithRequest(request){
(data, response, error) -> Void in
if error != nil {
print(error?.description)
} else {
do {
print("data recived : \(data)")
let jsonContent = try NSJSONSerialization.JSONObjectWithData(data!, options:NSJSONReadingOptions(rawValue: 0))
print("json content: \(jsonContent)")
}catch{
}
}
}
task.resume()
当我打印数据响应时,我得到以下信息:
data recived : Optional(<OS_dispatch_data: data[0x1245c9d60] = { composite, size = 41479, num_records = 3 record[0] = { from = 0, length = 9580, data_object = 0x124584720 }, record[1] = { from = 0, length = 10846, data_object = 0x1245c9a00 }, record[2] = { from = 0, length = 21053, data_object = 0x1245c9f60 }, }>)
接收到的数据:可选()
你们中有人知道NSJSONSerialization不起作用吗
我将非常感谢您的帮助。看起来您正在接收数据;你期望jsonContent中有什么值?@Kevin,是的,我期望Json数据。你能澄清你返回的错误吗?在catch块中添加
print(error)
<代码>
let session = NSURLSession.sharedSession()
let task = session.dataTaskWithURL(URL, completionHandler: {(data, reponse, error) in
let jsonResults : AnyObject
do {
jsonResults = try NSJSONSerialization.JSONObjectWithData(data!, options: [])
// success ...
}
catch let error as NSError {
// failure
print("Fetch failed: \(error.localizedDescription)")
}
})
task.resume()