FeathersJs: context.params.user, возвращающий undefined в хук перед

Я получаю undefined, когда пытаюсь назначить user._id сущности в обработчике before.

Крюк

module.exports = (options = {}) => { 
return async context => { 

const user = context.params.user;

context.data = {
...
      userId: user._id,
...
    };
return context; 
}; 
};

Это мой реестр крючков

  before: {
...
    create: [processProperty(), authenticate('jwt')],
...
  }
}

person Aosu Terver    schedule 31.05.2020    source источник


Ответы (1)


Мне удалось решить проблему, поставив крючок authenticate перед моим крючком processProperty, как показано ниже. Я думаю, это связано с тем, что каждый хук в массиве обрабатывается слева направо, поэтому в этом случае хук processProperty требует доступа к аутентифицированному пользователю, поэтому он должен появиться после того, как хук authenticate был обработан.

  before: {
...
    create: [authenticate('jwt'), processProperty()],
...
  }
}
person Aosu Terver    schedule 31.05.2020