javascript-Node.js Express,路由器,最佳参数作为扩展

我的第一个Node.js Express应用程序.在路由中,我有一个名为/ info的路由,该路由呈现了一个信息页面模板.

app.js:

app.use('/info', info);

info.js:

// routes to /info, and should also handle /info.json
router.get('/', function(req, res) { //... });

我还希望能够使用上面的相同功能,使用最佳参数.json来呈现json内容-/info.json.

我一直在尝试使用正则表达式,但无法正常工作.我只能设法做到:/info/.json

是否可以使用相同的功能来执行此操作?

解决方法:

我会使用express的content-negotiation功能.首先,声明您的路线,例如:

app.get('/info(.json)?', info);

然后在信息中(取自上面的链接):

res.format({
  'text/html': function(){
    res.send('hey');
  },

  'application/json': function(){
    res.send({ message: 'hey' });
  }
});

编辑:使用正则表达式的单个路由

上一篇:php-Laravel异常405 MethodNotAllowed


下一篇:php-限制某些路由访问Laravel中的localhost