我有一个应用程序,我试图从我创建的API中提取数据(API基于 NODE.js,MongoDB,Express.js )
目前我正在尝试拉取对象数组,然后根据该对象数组创建一个tableview。例如,如果对象数组包含4个对象,则表视图将包含4个单元格。在单击一个单元格时,我将转到另一个视图,在那里我将能够查看该对象的详细视图。
如何从API解析返回的JSON数据并填充表格视图单元格?
我的问题:
目前我无法解析返回的对象数组。下面是返回的JSON包含的图像:
错误:
我收到以下错误:
g++ throw.cc -o out -fno-exceptions.
以下是我的SWIFT代码:
Error could not parse JSON: Optional([
{
"_id": "55d1db984f80687875e43f89",
"password": "$2a$08$OQB/r9iIZdSFlN9L5vaiE.qILB8gP/YtlsA3S41usVnM/eXHBW9j6",
"email": "syed.kazmi26@gmail.com",
"__v": 0,
"sector": "Manufacturing",
"jobTitle": "Something 1",
"employeeName": "Something 1"
},
// it displays all the data being returned in JSON response
])
答案 0 :(得分:2)
也许您可以尝试使用NSArray而不是Dictionary并更改阅读选项。我建议做某事。像这样:
var json : NSArray? = nil
json = (NSJSONSerialization.JSONObjectWithData(data, options:NSJSONReadingOptions.MutableContainers , error: &error) as? NSArray)!
希望能解决你的问题。
答案 1 :(得分:2)
而不是
var json = NSJSONSerialization.JSONObjectWithData(data, options: .MutableLeaves, error: &err) as? NSDictionary
应该是
var json = NSJSONSerialization.JSONObjectWithData(data, options: .MutableLeaves, error: &err) as? NSArray
因为您的回复内容是一个以 [开头的数组,实际上其元素的类型为NSDictionary
。
如果是 [或 {。
JSON数组启动&以方括号结尾,JSON字典开始&以花括号结束。