Есть ли способ установить пользовательский токен доступа Bearer в пакете angular-oauth2-oidc? - PullRequest
0 голосов
/ 27 июня 2019

Я создал пользовательскую конечную точку для входа в Facebook. Эта конечная точка получает токен доступа Facebook от клиента. Я получаю этот токен в моем клиенте (Ionic App) с пакетом '@ ionic-native / facebook / ngx'.

Внутри контроллера в Laravel Json API я ищу пользователя с Socialite со вставленным токеном доступа Facebook. После получения пользователя я генерирую из него токен доступа Bearer. Ответом является этот токен доступа на предъявителя.

После получения этого токена доступа Bearer внутри моего клиента мне нужно каким-то образом добавить его в службу "angular-oauth2-oidc". У меня уже есть нормальный поток паролей, но как мне реализовать собственный неявный поток, чтобы я мог установить данный маркер доступа к своему сервису?

Я пробовал tryLogin (), но этот метод работает только для моей обычной конечной точки входа в систему. Теперь у меня есть две конечные точки: «... / oauth / token» (обычный) и «... / oauth / facebook / token» (facebook).

public setAccessToken(bearerAccessToken){
//Code to set the given access token in my oAuthService
}

Я хочу, чтобы это как-то сработало.

canActivate() {
  return this.oAuthService.hasValidAccessToken() ||
      this.router.parseUrl('/landing-page');
  }

Это моя охрана. Если мой токен доступа на предъявителя установлен, hasValidAccessToken() должен возвращать true.

Я ожидаю, что где-то в "angular-oauth2-oidc" есть функция setAccessToken, которую я могу использовать.

1 Ответ

0 голосов
/ 28 июня 2019

Сам нашел решение, следующее решил вопрос: this.oAuthStorage.setItem('access_token', bearerAccessToken);

...