Ошибка: TypeError ('app.use () требует функции промежуточного программного обеспечения - PullRequest
0 голосов
/ 20 апреля 2019

Я новичок в Node Js, только начал изучать и пробовал следующий код, но в этом что-то не так, и он выдает ошибку. Есть похожий вопрос, но не смог понять, что в этом плохого.

const express = require('express');
var app = express();
const path = require('path');
const PORT = process.env.PORT || 5000;
const logger = require('./middleware/logger')
const cookieParser = require('cookie-parser');
const bodyParser = require('body-parser');
const helmet = require('helmet');
const passport = require('passport');
var securedRoutes = express.Router();


//set static folder
app.use(express.static(path.join(__dirname,'public')));

securedRoutes.get('/',(req,res) => {
    res.send('Test!!!Vmal');
})

//Init middleware
app.use(logger);
app.use(helmet());
app.use(helmet.contentSecurityPolicy({
    directives: {
      defaultSrc: ["'self'"]
    }
}));

app.use(passport);
app.use(cookieParser());
app.use(bodyParser.json({limit: '50mb'}));
app.use(bodyParser.urlencoded({limit: '50mb', extended: true,parameterLimit:50000}));
app.listen(PORT,() => console.log(`server started on port ${PORT}`));
module.exports = app;

Ошибка: выдать новую ошибку TypeError ('app.use () требуется функция промежуточного программного обеспечения') ^ Ошибка TypeEr: app.use () требует функции промежуточного программного обеспечения.

Может кто-нибудь помочь с этим.THANKS

1 Ответ

3 голосов
/ 20 апреля 2019

Поскольку вы используете passport модуль, вы должны инициализировать его при обращении из приложения.

Из документации npm https://www.npmjs.com/package/passport:

...
app.use(passport.initialize());
app.use(cookieParser());
...
...