【发布时间】:2016-06-08 09:31:49
【问题描述】:
我想获得以下结构,并能够修改相应键的用户数组,并以 json 响应发送。
var data = ["A": [user1,user6,user9], "B": [user2], "E": [user3], "S": [user10], "Z": [user7], "J": [user8]]
data 在jsonObject 内发送到客户端 (Swift) 时应采用此格式:[String : [User]]
这是我迄今为止尝试过的,
var dict = [];
var jsonObject = {};
User.find({}, function(err, users) {
if (err) {
return res.status(500).send(err);
} else {
users.forEach(function(user) {
dict[user.name.substring(0, 1)] = []
dict[user.name.substring(0, 1)].push(user)
});
}
jsonObject["key"] = dict
return res.status(200).json(jsonObject);
});
虽然console.log(jsonObject)打印正确,但json响应是:
{
"key": []
}
在客户端(Swift)上,我正在尝试做这样的事情。但它给出了错误。
.responseJSON(completionHandler: { response -> Void in
if let jsonObj = response.result.value {
if let result = jsonObj["key"] as? [String: [User]]
{
var dict : [String: [User]] = result
print(dict)
}
}
})
有什么帮助吗?
【问题讨论】:
-
是
data一个对象` var data = {"A": [user1,user6,user9], "B": [user2], "E": [user3], "S" :[user10],“Z”:[user7],“J”:[user8]}` -
在ios端就是这种格式; [字符串:[用户]]
标签: json node.js list object dictionary