我对MongoDB比较新,所以我还是习惯了。
目前我正在尝试使用javascript中的以下代码从客户端将json对象发布到mongo。
var addUserButton = document.getElementById('add-user');
var userNameInput = document.getElementById('name');
addUserButton.onclick = function() {
var newUser = new Object();
newUser.name = userNameInput.value;
var newUserJson = { 'name': newUser.name};
$.post('127.0.0.1:27017/test', newUserJson);
};
当我运行此代码时,虽然我收到错误说明:
XMLHttpRequest无法加载%3127.0.0.1:27017 / test。交叉起源 请求仅支持协议方案...等
我读到了这个,并想知道是否将以下CORS处理程序添加到mongoDB会解决这个问题。如果它是正确的,我将如何将其添加到MongoDB?我找不到有关如何将此CORS处理程序添加到mongo
的文档function handleCors(req, res, callback) {
res.setHeader('Access-Control-Allow-Origin', '*')
res.setHeader('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE,OPTIONS');
res.setHeader('Access-Control-Allow-Headers', 'Authorization');
// CORS OPTIONS request, simply return 200
if (req.method == 'OPTIONS') {
res.statusCode = 200;
res.end();
callback.onOptions();
return;
}
callback.onContinue();
};
答案 0 :(得分:3)
您的概念工作存在问题。
顺便说一句,对于服务器路由,您可以使用高级节点框架,如expressjs。
如果你想要一个完整的例子,你可能想要查看this example和 可以在Single Page Application with Angular.js, Node.js and MongoDB - phloxblog找到解释。