AngularJs, как получить токен jwt из $ localStorage с помощью angular-jwt - PullRequest
0 голосов
/ 18 июня 2019

Я хочу настроить jwtInterceptor. Я нашел angular-jwt, но не знаю, как получить токен, который я сохранил в $ localStorage.

Я уже создал службу, которая получает токен из $ localStorage, но я не могу внедрить службу в конфигурацию, а также не могу вставить $ localStorage в конфигурацию.

Вот код angular-jwt:

angular
  .module('app', ['angular-jwt'])
  .config(function Config($httpProvider, jwtOptionsProvider) {
    // Please note we're annotating the function so that the $injector works when the file is minified
    jwtOptionsProvider.config({
      tokenGetter: ['myService', function(myService) {
        myService.doSomething();
        return localStorage.getItem('id_token');
      }]
    });

    $httpProvider.interceptors.push('jwtInterceptor');
  })

Вот сервис, который я использую для сохранения токена в $ localStorage:

$http.post('/users/api/auth', { email: email, password: password })
                    .then(function (response) {
                        if (response.data.token) {
                            $localStorage.currentUser = { email: email, token: response.data.token, role: response.data.user.role }
                            $http.defaults.headers.common.Authorization = 'Bearer ' + response.data.token;                                                  
                    });

Я не совсем понимаю функцию myService, я пытался ее использовать, но я не могу вызвать ее и запустить. Как я могу получить свой токен и использовать его в конфигурации jwtInterceptor?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...