在环回

问题描述:

我的一个环回路线恰好2个参数内启动/ routes.js绕行路线是:在环回

router.get('/:foo?/:bar?', function(req, res, next) { 
    ... 
}) 

并立即/api/user不再有效,因为它是由这条路线逮住。

如何在Loopback中绕过此路线(当我想要获取API时)?

是否有内置的方法/中间件来做到这一点,或者我应该使用next()

+0

怎么样利用该问题远程方法? – ChamalPradeep

+0

@ChamalPradeep你是什么意思?你的意思是扩展model.js?我想分开视图逻辑和数据逻辑。 GET路线当前显示一个视图。 – adelriosantiago

+0

使用remoteMethod最适合这种使用直接路由的avaoid –

它看起来像你试图直接在快速路由器上创建一个路由。回环框架提供了在您的模型上创建"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'} 
});