У меня есть API NodeJS, основанный на Express, стандартном маршрутизаторе, использующем cors app.use(cors())
для всех.Получение POST-запроса
router.post('/stats/add', function(req, res, next) {
console.log(req.body);
res.end();
});
С внешнего интерфейса я отправляю данные с помощью fetch, например:
fetch('http://127.0.0.1:3999/stats/add', {
method: 'post',
body: JSON.stringify({
"imgs": [{
"url": "http://www.interstyle-spb.ru/assets/images/products/1547/1-copy29.jpg",
"width": 584,
"height": 876,
"vp_width": 1845,
"vp_height": 1053
}, {
"url": "https://lasany.ru/media/wear-sarafan-p1-880/sarafan-1880-1.jpg",
"width": 584,
"height": 876,
"vp_width": 1845,
"vp_height": 1053
}]
})
}).then(res => res.json())
.then(res => console.log(res));
, и когда я не указываю информацию заголовка, я получаю пустое тело {}
Когда я добавляю заголовки, он работает
headers: {
'Accept': 'application/json, text/plain, */*',
'Content-Type': 'application/json',
},
Я получаю этот объект.
Как я могу добавить заголовок с информацией application/json
перед маршрутизацией или разрешить запросы без заголовков?
Это не работает
router.use(function(req, res, next) {
// set the header you wish to append
req.headers('px-test-header', 1234);
next();
});
Может быть есть другие способы?