app.use()需要中间件功能错误

时间:2020-10-04 21:00:54

标签: node.js express routes

在nodejs项目中,我遇到此错误:'app.use()在此文件的第7行出现中间件功能错误:

const Router = require('./route');
const express = require('express');
const app = express();
const port = 3001;

app.use(express.json());
app.use(Router);

app.listen(port, () => {
    console.log(`Example app listening at http://localhost:${port}`);
});

我真的不明白为什么我得到这个错误。 这是路线文件

const ProduitRouter = require('./produit');
const router = require("express").Router();

router.use("/produit", ProduitRouter);

module.exports = router;

const ProduitControleur = require("../controleur/produitDB");
const Router = require("express-promise-router");
const router = new Router;

//const router = require("express").Router();

router.get('/:id', ProduitControleur.getProduit);
router.post('/', ProduitControleur.postProduit);
router.patch('/', ProduitControleur.updateProduit);
router.delete('/', ProduitControleur.deleteProduit);

module.exports = router;

2 个答案:

答案 0 :(得分:0)

尝试一下。

app.js

const express = require('express');
const app = express();
const bodyParser = require('body-parser');
const cors = require('cors');

const http = require('http');

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

require('./routes')(app); // path of file in which all your routes are defined.



module.exports = app;

在定义了所有路由的路由器文件中。

const express = require('express');
const router = express.Router();
const controller = require('path of controller');


router.post('/upload/file', verifyToken, controller .functionName);

module.exports = router;

答案 1 :(得分:-1)

如我所见,Router文件没有导入