我尝试在网上搜索,但无法解决我的问题。
我在本地主机上运行了两个节点js服务器。
后端: localhost:9000
前端: localhost:3000
我的前端服务器中有一个jquery Ajax调用,如下所示:
$(document).ready(function() {
$.ajax({
url: "http://localhost:9000/merchant",
type: "post",
data: {content: "{"+
'"0": {"name":"kfc", "desc":"great chicken", "web":"www.kfc.com"},'+
'"1": {"name":"pizzaexpress", "desc":"your favourite pizza express", "web":"www.pizzaexpress.com"},'+
'"2": {"name":"indianmasala", "desc":"great indian food", "web":"www.masala.com"},'+
'"3": {"name":"starbucks", "desc":"all coffeee", "web":"www.starks.com"}'+
"}"}
}).done(function(data) {
alert(data);
});
});
是的,我在内容参数中发布了一个JSON。哪个存储在我的mongoDB中,应该返回插入的ID。
我的后端app.post功能看起来像这样:
var content = JSON.stringify(req.body.content);
content = JSON.parse(req.body.content);
var ids = new Array();
for (var key in content) {
if (content.hasOwnProperty(key)) {
var merchant = new Merchant();
merchant.name = content[key].name;
merchant.desc = content[key].desc;
merchant.web = content[key].web;
merchant.save();
ids[key] = merchant._id;
}
}
var response = {"status":"Request processed successfully", "id": ids};
console.log(JSON.stringify(response));
res.contentType('json');
res.send(JSON.stringify(response));
当我在我的浏览器上加载前端localhost:3000时,AJAX调用localhost:9000 / merchant,然后将商家信息存储在mongodb中,但
res.send();
,也不
res.write();
发送回复。我检查了console.log中的JSON.stringify(响应),看起来很好。
当我在萤火虫中看到它时,我的回答是空的。
不确定出了什么问题。非常感谢你们多多给我一个答案。
非常感谢。