Служба угловой аутентификации - TOKEN BASED - PullRequest
0 голосов
/ 03 сентября 2018

По моему AuthenticationService у меня есть:

@Injectable()
export class AuthenticationService {
constructor(private http: HttpClient) { }

login(username: string, password: string) {                                
    return this.http.post<any>
    (`${environment.apiUrl}/token`, "grant_type=password&username="+username+"&password="+password).pipe(map(user => {                
            // login successful if there's a jwt token in the response                      
            if (user && user.token) {
                // store user details and jwt token in local storage to keep user logged in between page refreshes
                localStorage.setItem('currentUser', JSON.stringify(user));                    
            }                                
            return user;
        }));
}

В if (user && user.token) ... user.token возвращает undefined и затем не создает currentUser localStorage.

Если я пишу только: if (user) ... он работает и генерирует маркер доступа следующим образом:

access_token:"eiGcvwEa0SsL0xml2Y5BcnR5W1g-vTniUB96YPFsnWe7AwG-pEmtLaOf1nurnYOFFJ-qpax5QceWD9qkEtXJIWU91DFvDwEOrrRqIrb1-gBFnspTk6dE6YjIXpZqkcA1JHWJezQx0dfqBINhZ08qocfIrqK0IqqOvguRh9-PUJCPRMg4JaYh3CJGAZVqbFi8WiO4OwRwrBVqXXGWSHqoCUgHxWDYolCZE7axCLDdbTcbCz2IluemsA0kdmvyQ2laub3iELFN-5m7dAvpCYtFvHjt2qkYijH_v2E3uV5dux5e_txj4XSTzoT8kikoCn7I"
expires_in:59
refresh_token:"c723ec64-c90e-482d-8292-390214d5324b"
token_type:"bearer"

Мне нужно получить токен от user.token, но я не знаю, где я неправ.

Ответы [ 2 ]

0 голосов
/ 03 сентября 2018

Потому что свойство access_token не token. Попробуйте if(user && user.access_token)

0 голосов
/ 03 сентября 2018

Вы уверены, что объект user имеет свойство token? (попробуйте войти в консоль user).

Может быть, вы ищете access_token.

...