Nodejs Expressエラー、ペイロードが大きすぎます、リクエストデータが大きすぎます



Nodejs Express Error



エラーは次のとおりです。

Error: request entity too large

いくつかの調査とテストの結果、デバッグ時に最初にapp.use(express.bodyParser({limit: '50mb'}))その後 app.use(express.json())。次に、Expressは、スクリプトの実行時に最初に遭遇したパーサーがexpress.json()であったため、グローバル制限を1MBに設定します。上に移動bodyParserそれだけです。



つまり、bodyParser()メソッドはConnect3.0で非推奨になるため、使用しないでください。代わりに、パーサーを次のように明示的に宣言する必要があります。

app.use(express.json({limit: '50mb'})) app.use(express.urlencoded({limit: '50mb'}))

Express 4では、express.json() with express.urlencoded()ではなく、質問する必要があることに注意してください ボディパーサー モジュール化して使用するjson() with urlencoded()方法は次のとおりです。



var bodyParser = require('body-parser') app.use(bodyParser.json({limit: '50mb'})) app.use(bodyParser.urlencoded({limit: '50mb', extended: true}))

場合extendedこのオプションは明示的に定義されていませんbodyParser.urlencoded()、警告(body-parser deprecated undefined extended: provide extended option)をスローします。これは、このオプションが次のリリースで必要になるためです。 もはや オプションです。