Error: Most middleware (like methodOverride) is no longer bundled with Express and must be installed separately

0

I need to create a web service and I'm using Node.js on the server. But when I'm running on localhost I get an error:

  

Error: Most middleware (like methodOverride) is no longer bundled with   Express and must be installed separately. Please see    link .

Server.js

/**
 * Module dependencies.
 */

var express = require('express');
var servicios = require('./api/servicios/');
var http = require('http');
var path = require('path');
var logger = require('morgan');

// --------- SERVICIOS ------------ //

// servicios de asistenteVenta
var asistenteVenta = require('./api/servicios/asistenteVentaServicio');

// -------------END --------------- //

var app = express();

//var connection  = require('express-myconnection'); 
var mysql = require('mysql');

// all environments
app.set('port', process.env.PORT || 4300);
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'ejs');
//app.use(express.favicon());
app.use(logger());
app.use(express.json());
app.use(express.urlencoded());
app.use(express.methodOverride());
app.use(express.static(path.join(__dirname, 'public')));

app.use(function (req, res, next) {
    // Website you wish to allow to connect
    res.setHeader('Access-Control-Allow-Origin', 'http://localhost:4200');
    // Request methods you wish to allow
    res.setHeader('Access-Control-Allow-Methods', 'GET, POST, OPTIONS, PUT, PATCH, DELETE');
    // Request headers you wish to allow
    res.setHeader('Access-Control-Allow-Headers', 'X-Requested-With,content-type');
    // Set to true if you need the website to include cookies in the requests sent
    // to the API (e.g. in case you use sessions)
    res.setHeader('Access-Control-Allow-Credentials', true);
    // Pass to next layer of middleware
    next();
});

// development only
if ('development' == app.get('env')) {
  app.use(express.errorHandler());
}

/*------------------------------------------
    connection peer, register as middleware
    type koneksi : single,pool and request 
-------------------------------------------*/

app.use(
    connection(mysql,{

        host: 'localhost', //'localhost',
        user: 'root',
        password : '1234',
        port : 3306, //port mysql
        database:'proyectoinmobiliaria'

    },'pool') //or single
);


app.use(app.router);
http.createServer(app).listen(app.get('port'), function(){
  console.log('Express server listening on port ' + app.get('port'));
});

The following is the error I got from the console:

C:\Users\Sebastian\Desktop\nodejsRestful\node_modules\express\lib\express.js:108
      throw new Error('Most middleware (like ' + name + ') is no longer bundled with Express and must be installed separately. Please see https://github.com/senchalabs/connect#middleware.');
      ^

Error: Most middleware (like methodOverride) is no longer bundled with Express and must be installed separately. Please see https://github.com/senchalabs/connect#middleware.
    at Function.get (C:\Users\Sebastian\Desktop\nodejsRestful\node_modules\express\lib\express.js:108:13)
    at Object.<anonymous> (C:\Users\Sebastian\Desktop\nodejsRestful\server.js:31:17)
    at Module._compile (module.js:652:30)
    at Object.Module._extensions..js (module.js:663:10)
    at Module.load (module.js:565:32)
    at tryModuleLoad (module.js:505:12)
    at Function.Module._load (module.js:497:3)
    at Function.Module.runMain (module.js:693:10)
    at startup (bootstrap_node.js:191:16)
    at bootstrap_node.js:612:3
    
asked by Sebastian Salazar 17.09.2018 в 22:50
source

0 answers