loopback在标头中使用令牌

时间:2016-09-16 09:15:39

标签: javascript token loopback

我无法在模型中恢复我的令牌的用户ID' remoteMethods。我使用了以下代码:

User.beforeRemote('**', function(ctx, user, next) {
  //...some custom token decoding
  ctx.req.body.user_id = token.user_id;
  console.log('token : ', token);
  next();
});

然后,在我使用的模型中:

User.check = function (user_id, cb) {
  // Do stuff..
}; 


 User.remoteMethod(
    'check',
    {
      http: {path: '/check', verb: 'post'},
      returns: {arg: 'rate', type: 'object'},
      accepts: [
        {
          arg: 'user_id',
          type: 'number',
          required: true,
          description: "id of the user to check",
          http: function getUserid(ctx) {
            console.log('User.check http body : ', ctx.req.body);
            return ctx.req.body.user_id;
          }
        }
      ],
      description: ''

    }
  );
问题是我的arg的功能是getUserid'触发之前' User.beforeRemote'调用

这是一个错误吗?你知道我怎么能做这个工作吗? 我不想使用

arg : {http : {source : 'body'}},

因为我只想在远程方法中使用user_id arg,因为我必须在大约20~30个现有方法中执行此操作

thanx!

1 个答案:

答案 0 :(得分:0)

我终于找到了一种更简单的方法: 我已经在中间件中添加了我的令牌解码,它运行得很好,带有经典的arg类型编号,没有http函数:

didMoveAtIndex