忽略NodeJS Express中的请求标头信息

时间:2018-12-17 11:35:25

标签: node.js express

我有一个基于Express标准路由器的NodeJS api,所有人都使用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();
});

可能还有其他方法吗?

0 个答案:

没有答案