express - 为什么安装 Express 头盔后显示 x-powered-by 标头?
问题描述
我有一个使用 webpack 在端口 8080 上运行的 Express 服务器。我按照包文档中的说明安装了头盔
const express = require('express')
const helmet = require('helmet')
const app = express()
app.use(helmet())
然而,当我npm start
仍然看到x-powered-by:Express
头文件时,localhost
并且没有看到 Helmet 应该启用的 dns-prefetch、xss 或其他头文件。我多次重新启动服务器,删除了我的构建文件夹,因此它没有被缓存,并且不知道它为什么不工作。任何想法或指示将不胜感激!
解决方案
您需要像这样显式调用中间件。
const hidePoweredBy = require('hide-powered-by') app.use(hidePoweredBy())
https://expressjs.com/en/advanced/best-practice-security.html
也可以试试
app.disable('x-powered-by')
推荐阅读
- java - leetcode 109:将排序列表转换为二叉搜索树
- java - NoClassDefFoundError: org/elasticsearch/script/ScriptEngine
- python - 根据 Python 中的唯一键将列中的类别转换为编码为 1 或 0 的多列
- firebase - 无法在 Firebase 中部署包含 @google-cloud/storage 的功能
- java - 如何使用 Zxing 库对 QR 码扫描仪进行人像?
- amazon-ec2 - 如何从远程服务器运行 Ansible play-book 命令
- swift - 后退按钮中的单个空格不会更改图标 Xcode 项目
- javascript - document.addEventListener("touchmove") 与 document.ontouchmove
- php - 用 PHP 发送邮件收到一些不需要的值
- javascript - 在java脚本前端生成可下载的二维码