【发布时间】:2014-09-01 16:48:19
【问题描述】:
我需要通过ajax请求向服务器发送一个js对象; 是一个对象,包含节点 js 中使用 Sequelize orm 的 sql 查询的参数;一个例子是这样的:
var data =
{
include: [
{ model: model.Shop },
{ model: model.Product,
include: [
{ model: model.File }
]
}
]
}
它可以包含嵌套在多个层次上的对象数组; 在发送之前,如果需要,我可以将其转换为有效的 JSON,如下所示:
var data =
{
"include": [
{ "model": "model.Shop" },
{ "model": "model.Product",
"include": [
{ "model": "model.File" }
]
}
]
}
我尝试将其作为 JSON 发送:
$.ajax({
//...
data: data
});
问题是我在节点服务器中对接收到的字符串做JSON.parse时,每个属性的值都是字符串,不被识别为模型对象;
我怎样才能让我的服务器能够理解这一点?
【问题讨论】:
-
“如果需要,我可以将它转换为有效的 JSON,就像这样” 这不是 JSON,它仍然是一个 JavaScript 对象。
{"foo": 42}与{foo: 42}相同。
标签: javascript jquery ajax node.js