Express.js路由API无法提供全部路由

我是MEAN的初学者,使用express.js构build了一个API

var User = mongoose.model('User'); router.get('/users', function(req, res, next) { User.find(function(err, users){ if(err){ return next(err); } res.json(users); }); }); 

这是我在index.js中创build的路线

 router.get('/', function(req, res, next) { res.render('index'); }); 

API使用这条路线工作的很好,但是当我改变上面的路由到一条“全path”的路线

 router.get('*', function(req, res, next) { res.render('index'); }); 

该API没有工作(我用Postman的),它返回index.ejs页面,而不是一个JSON响应。 有人可以解释为什么发生这种情况,我想使用全path,并希望API的工作。

什么是第一个在你的代码? 到/users的路线还是全路线? 您需要首先定义更具体的路线,最后是全部路线。

 router.get('/users', function(req, res, next) { ... }); router.get('*', function(req, res, next) { ... });