Как стать автором
Обновить

Комментарии 7

Добрый день! Спасибо за обзор!
А случаем не сталкивались с проблемой получения текущего юзера из заинъекченного request?
Пользуемся такой схемой, проблем вроде не возникало. Используем PassportStrategy для этого
интересно было бы увидеть пример
Вот пример с jwt аутентификацией, установка пользователя происходит в функции validate pastebin.com/AUjZ7vsr
Я имел в виду немного другое.
После добавления passport и настройки его стратегий на уровне контроллера в объекте request появляется поле user с текущим пользователем, с этим все понятно.

Однако если в сервис заинжектить request
@Injectable({ scope: Scope.REQUEST })
export class FooService {
  constructor(
    @Inject(REQUEST) private request: Request,
  ) {
  }
}

то this.request не будет содержать user

Да, перечитал ваш вопрос, понял что ответил немного не в попад). На край можно также заинжектить в strategy инстанс request-а и в validate пропихнуть юзера. Я думаю, что это сработает, но не уверен, что это лучшее решение
так и сделал) не особо красиво получилось + лишнее чтение данных юзера из базы
но инжектить юзера прямо в сервис весьма удобно
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации