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



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

这是我的节点.json

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

这是我目前的包.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=server nodemon .",

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

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

但是,如果您的标头超过8KB,则必须返回到以前的版本,直到正确的修复程序出来。

我正在使用ts-node和nodemon,这适用于我的项目:

"exec": "node --max-http-header-size 80000 -r ts-node/register src/app.ts",

这在我的nodemon.json配置文件中。

相关内容

  • 没有找到相关文章

最新更新