node.js - 如何使用 `--max-http-header-size` babel-node 设置 nodejs 命令 `nodemon --exec "。`

标签 node.js nodemon babel-node

我正在将我的nodejs版本从8升级到10。升级后,我现在无法在任何浏览器中运行我的应用程序。所以我用谷歌搜索了我的问题,发现 Node 10 的 header 大小已从 80kb 缩小到 8kb。我的应用程序 header 大小超过 8kb。所以我需要使用nodejs命令--max-http-header-size=80000来设置它。但我不知道如何使用 nodemonbabel-node 设置它。 请帮忙。

这是我的nodemon.json

{
  "ext": "js jsx ejs json gql css",
  "exec": "babel-node"
}

这是我当前的 package.json:

"develop:server": "BABEL_ENV=server nodemon .",

我已经尝试过的解决方案:

{
  "ext": "js jsx ejs json gql css",
  "exec": "node --max-http-header-size=80000 ./node_modules/babel-cli/bin/babel-node.js"
}

正确的解决方案如下(选择其中之一):

  1. {
      "ext": "js jsx ejs json gql css",
      "exec": "NODE_OPTIONS=--max-http-header-size=80000 babel-node"
    }
    
  2. "develop:server": "NODE_OPTIONS=--max-http-header-size=80000 BABEL_ENV=服务器 nodemon 。",

最佳答案

我认为 Node 工程师从版本8.16.0减少了http-header-size。他们减少了它以防止像 DDOS 等攻击。当我从 Node 版本 8.9.1 升级到 8.16.0 时,我遇到了同样的问题。我如何解决这个问题是在我的 package.json 中,我添加了 --max-http-header-size=80000 flag in start script例如

"scripts": {"start": "node --max-http-header-size=80000 server.js"}

并且成功了。但如果您的 header 超过 8kb,那么您必须返回到以前的版本,直到出现正确的修复程序。

关于node.js - 如何使用 `--max-http-header-size` babel-node 设置 nodejs 命令 `nodemon --exec "。`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57705290/

相关文章:

node.js - 无法使用post方法通过 Angular js 5将上传的文件发送到 Node js服务器

javascript - SIP CANCEL 请求永远不会收到 200 取消响应

node.js - Nodeclipse 调试器忽略断点

node.js - 如何从 node.js 失败 gitlab-ci 作业

node.js - 生成 babel-node ENOENT

node.js - 在 PowerShell 上运行 npm 会询问 "How do you want to open this file?",命令行没问题

json - 使用Lambda部署时,fs.readFileSync无法找到文件

javascript - 如何将加密形式的密码从 ReactJS 发送到 ExpressJS?

javascript - 更改 Windows 配置文件 nodemon nodejs 不工作