NodeJS giving Error: request entity too large on post calls


I have a POST endpoint in my NodeJS project. When I post huge JSON strings to the endpoint I am getting the following error.

Error: request entity too large
    at readStream (/Users/foo/githome/bar/node_modules/raw-body/index.js:196:17)
    at getRawBody (/Users/foo/githome/bar/node_modules/raw-body/index.js:106:12)
    at read (/Users/foo/githome/bar/node_modules/body-parser/lib/read.js:76:3)
    at jsonParser (/Users/foo/githome/bar/node_modules/body-parser/lib/types/json.js:127:5)
    at Layer.handle [as handle_request] (/Users/foo/githome/bar/node_modules/express/lib/router/layer.js:95:5)
    at trim_prefix (/Users/foo/githome/bar/node_modules/express/lib/router/index.js:317:13)
    at /Users/foo/githome/bar/node_modules/express/lib/router/index.js:284:7
    at Function.process_params (/Users/foo/githome/bar/node_modules/express/lib/router/index.js:335:12)
    at next (/Users/foo/githome/bar/node_modules/express/lib/router/index.js:275:10)
    at urlencodedParser (/Users/foo/githome/bar/node_modules/body-parser/lib/types/urlencoded.js:100:7)

1 Answer

5 years ago by

body-parser's default limit is 100kb FYI https://github.com/expressjs/body-parser#limit

You can always change the default config with the following

app.use(bodyParser.urlencoded({
  limit: "50mb",
  extended: false
}));
app.use(bodyParser.json({limit: "50mb"}));
5 years ago by Karthik Divi