Я разрабатываю веб-сервис REST в Node.JS для работы с базовым каркасом. Я определил модель Person с urlRoot: http://localhost:3000/users
, и я создал обработчик запроса, который добавляет человека в базу данных при получении почтового запроса.Происхождение http: // localhost не разрешено Access-Control-Allow-Origin.
app.post('/users', user.add(db));
exports.add = function(db){
return function(req,res){
console.log(req.body);
var name = req.body.name;
var age = req.body.age;
var sex = req.body.sex;
var job = req.body.job;
var peopleDb = db.get('people');
peopleDb.insert({
'name':name,
'age':age,
'sex':sex,
'job':job
},function(e,docs){
if(e){
console.log(e);
}else
{
res.setHeader('Content-Type','application/json');
res.setHeader('Access-Control-Allow-Origin','*');
res.setHeader('Access-Control-Allow-Methods','GET,PUT,POST,DELETE');
res.writeHead(200);
res.end(JSON.stringify(docs));
}
});
}
}
Когда я пытаюсь выполнить код, я получаю это в консоли:
Origin http://localhost is not allowed by Access-Control-Allow-Origin.
Я читал из других ответов, добавляя заголовки: Access-Control-Allow-Origin:*
и Access-Control-Allow-Methods:GET,PUT,POST,DELETE
бы решить проблему, но она не сработала для меня. Я также попытался помещать эти заголовки в файл .htaccess, но не повезло.
Может кто-нибудь сказать мне, если что-то не так с кодом или каким-либо решением этой проблемы?
Ты лучший! –
@ W.K.S так вы :) – Bulkan