Node.js如何为每个请求设置内容类型标头

时间:2018-10-15 08:27:26

标签: node.js http header

我想知道如何为传入的每个nodejs表达请求设置标头CGRect.zero

我尝试了这两行,但是如果我自己不添加标题,我的电话仍然会失败:

"Content-Type": "application/json"

我所有的请求都是json,所以我不希望前端(Anguler)每次都可以从服务器端自己设置时向我发送此标头。

3 个答案:

答案 0 :(得分:5)

响应对象必须使用.setHeader而不是.header

app.use(function(req, res, next) {
    res.setHeader("Content-Type", "application/json");
    next();
});

doc.

答案 1 :(得分:0)

要更新请求标头,请在bodyparser之前添加以下自定义中间件

app.use(function (req, res, next) {
  req.headers['content-type'] = 'application/json';
  next();
});

如果仍然无法正常工作,请检查客户发送的“内容类型”的大小写。将“内容类型”放在相同的情况下

答案 2 :(得分:0)

res.writeHead(200,{"Content-Type":"application/json"});

在这里您还必须指定状态码,200表示状态为OK,请在此处了解有关状态码的更多信息:HTTP Status Codes

或使用此代码

res.setHeader("Content-Type","application/json");