如何在创建反应应用程序中禁用"X-Powered-By"响应标头?



我正在使用Create-react-app开发一个 react.js 应用程序,在响应标头中,我看到了 Express 的x-powered-by标头,我想禁用此特定标头字段。有没有办法实现这一目标?在Next.js中,我们可以通过向配置文件添加一些代码来禁用此标头字段,我们可以在我的场景中实现相同的目标吗?

React 是一个客户端框架,不处理向浏览器提供应用程序。用于托管应用程序的任何系统都负责该标头。一些CRA模板使用webpack-dev-server来表示npm start,这是在Express上构建的,可能是显示标题的内容。由于这实际上不是应用程序的一部分,因此即使可以关闭它也没有多大意义。

我建议看看头盔,这将删除x-powered-by标头,并通过设置其他http标头来增强安全性(有关详细信息,请参阅文档)

const express = require("express");
const helmet = require("helmet");
const app = express();
app.use(helmet());
app.get("/test", (req, resp) => { 
resp.send('Testing with Helmet');
})
app.listen(3000);

当您使用头盔时,您将看到X-Powered-By: Express标头不再存在。

如果您只想隐藏x-powered-by标题,我建议您尝试:

const express = require("express");
const helmet = require("helmet");
const app = express();
app.use(helmet.hidePoweredBy());
app.get("/test", (req, resp) => { 
resp.send('Testing with Helmet');
})
app.listen(3000);

相关内容

  • 没有找到相关文章

最新更新