Below Is Code Of app.js
file
var port = process.env.PORT || 8080; // set our port
var express = require('express');
var app = express();
var bodyParser = require('body-parser')
var cors = require('cors');
var indexRouter = require("./server/routes/index");
var http = require('http').Server(app);
const path = require('path')
const Licence = require('./server/CronJob/CronJob');
http.listen(port);
app.use(cors());
app.use(bodyParser.json({ limit: '50mb' }));
app.use(bodyParser.json({
type: 'application/vnd.api+json'
}));
app.use(bodyParser.urlencoded({
limit: '50mb',
extended: true,
parameterLimit: 50000
}));
// parse application/json
app.use(express.json());
app.use(express.urlencoded()); //Parse URL-encoded bodies
app.use(function (req, res, next) {
res.header("Access-Control-Allow-Origin", '*');
res.header("Access-Control-Allow-Credentials", true);
res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,OPTIONS');
res.header("Access-Control-Allow-Headers", 'Origin,X-Requested-With,Content-Type,Accept,content-type,application/json');
res.header("Cache-Control", "no-store, no-cache, must-revalidate, proxy-revalidate, max-age=0");
next();
});
app.use(express.static(path.join(__dirname, "/build")));
app.use(indexRouter);
app.get('/*', function (req, res) {
res.sendFile(path.join(__dirname, '/build/index.html'), function (err) {
if (err) {
res.status(500).send(err)
}
})
})
// Licence.licenceExpire();
console.log('Magic happens on port ' + port); // shoutout to the user
exports = module.exports = app;
Version
express: ^4.17.1, body-parser: ^1.19.0
and also used suggestion given in below blog
update
I have used inbuilt body-parser but getting same error again here is the screenshot of function of inbuilt body-parser
From 4.16.0+ body-parser is inbuilt in express
Use http://expressjs.com/en/api.html#express.json
app.use(express.json({ limit: '50mb' }));
app.use(express.urlencoded())
https://expressjs.com/en/changelog/4x.html#4.16.0
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.
https://github.com/expressjs/body-parser/commit/b7420f8dc5c8b17a277c9e50d72bbaf3086a3900
This deprecates the generic bodyParser() middleware export that parses both json and urlencoded. The "all" middleware is very confusing, because it makes it sound like it parses all bodyes, though it does not do multipart, which is a common body type. Also, the arguments for the two different middleware are starting to overlap and it's hard to configure then when done this way.