hooks-authentication-hooks: restrictToRoles для пользователя с более чем одной ролью

Я реализовал feathers-authentication-hooks в моем проекте, и он работает, проверяя пользовательский столбец, содержащий роль. Теперь я хочу, чтобы он работал с более чем одной ролью на пользователя. Я пробовал несколько форматов в столбце базы данных, но все не удалось:

Форматы данных (точный формат на строку): role1, role2 role1; role2 [role1,role2] {"column_name": ["role1","role2"]}

кто-то знает, что мне нужно делать?

1 ответ

Решение

Большинство хуков в этом пакете могут быть реализованы вручную часто с тем же объемом кода и меньшим временем, чем требуется для чтения документации. В этом случае для вашего примера с пользовательским хуком, как это:

const { Unauthorized } = require('feathers-errors');

return function() {
  return function(context) {
    if(context.params.user.roles.indexOf('admin') === -1) {
      throw new Unauthorized('You are not allowed to access this');
    }
  }
}
Другие вопросы по тегам