在环回
问题描述:
我的一个环回路线恰好2个参数内启动/ routes.js绕行路线是:在环回
router.get('/:foo?/:bar?', function(req, res, next) {
...
})
并立即/api/user
不再有效,因为它是由这条路线逮住。
如何在Loopback中绕过此路线(当我想要获取API时)?
是否有内置的方法/中间件来做到这一点,或者我应该使用next()
?
答
它看起来像你试图直接在快速路由器上创建一个路由。回环框架提供了在您的模型上创建"remote methods"的功能。假设你使用的是PersistedModel作为你的基础,我会建议为你的参数使用查询参数,而不是将它们放在路径中。这样,你不会覆盖任何内置的模型方法。
在/common/models/user.js
:
User.foobar = function(foo, bar, cb) {
// TODO: implementation
}
User.remoteMethod('foobar',{
accepts: [
{arg: 'foo', type: 'string'},
{arg: 'bar', type: 'string'}
],
returns: {arg: 'baz', type: 'string'},
http: {verb: 'get'}
});
怎么样利用该问题远程方法? – ChamalPradeep
@ChamalPradeep你是什么意思?你的意思是扩展model.js?我想分开视图逻辑和数据逻辑。 GET路线当前显示一个视图。 – adelriosantiago
使用remoteMethod最适合这种使用直接路由的avaoid –