BodyParser Is Deprecated Express 4


Answer :

It means that using the bodyParser() constructor has been deprecated, as of 2014-06-19.

app.use(bodyParser()); //Now deprecated 

You now need to call the methods separately

app.use(bodyParser.urlencoded());  app.use(bodyParser.json()); 

And so on.

If you're still getting a warning with urlencoded you need to use

app.use(bodyParser.urlencoded({   extended: true })); 

The extended config object key now needs to be explicitly passed, since it now has no default value.

If you are using Express >= 4.16.0, body parser has been re-added under the methods express.json() and express.urlencoded().


Want zero warnings? Use it like this:

app.use(bodyParser.json()); app.use(bodyParser.urlencoded({   extended: true })); 

Explanation: The default value of the extended option has been deprecated, meaning you need to explicitly pass true or false value.


If you're using express > 4.16, you can use express.json() and express.urlencoded()

The express.json() and express.urlencoded() middleware have been added to provide request body parsing support out-of-the-box. This uses the expressjs/body-parser module module underneath, so apps that are currently requiring the module separately can switch to the built-in parsers.

Source Express 4.16.0 - Release date: 2017-09-28

With this,

const bodyParser  = require('body-parser');  app.use(bodyParser.urlencoded({ extended: true })); app.use(bodyParser.json()); 

becomes,

const express = require('express');  app.use(express.urlencoded({ extended: true })); app.use(express.json()); 

Comments

Popular posts from this blog

Are Regular VACUUM ANALYZE Still Recommended Under 9.1?

Can Feynman Diagrams Be Used To Represent Any Perturbation Theory?