【发布时间】:2019-04-20 20:23:12
【问题描述】:
我是 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;
Error : throw new TypeError('app.use() 需要一个中间件函数') ^TypeError: app.use() 需要一个中间件函数。
有人可以帮忙吗。谢谢
【问题讨论】:
-
哪一行报错?如果未指明,请尝试评论每个 app.use 以查看哪个引发错误
-
来自 app.use(passport);它正在抛出错误。
-
查看答案
-
仍然得到相同的错误.app.use(passport.initialize()); app.use(护照); app.use(cookieParser());在这个的第二行
-
你应该删除
app.use(passport)这一行
标签: javascript node.js express monodevelop router