Я изучаю Angular 6. Из моего веб-интерфейса (.net core) я отправляю следующее, что вижу на Почтальоне:
{"token":`{"token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJqeWVlQGNvbGxhYnJhbGluay5jb20iLCJqdGkiOiI2OWVmYmIxNC0wYTBjLTQ5NjgtYjVhZi1mNDYzMTQ2ZDViNmUiLCJ1bmlxdWVfbmFtZSI6IkpvaG5ZZWUiLCJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL3dzLzIwMDgvMDYvaWRlbnRpdHkvY2xhaW1zL3JvbGUiOlsiYWRtaW4iLCJhbmFseXN0IiwicmV2aWV3ZXIiLCJjb21taXR0ZWUiXSwibmJmIjoxNTQwMzEyODIwLCJleHAiOjE1NDAzMzA4MjAsImlzcyI6ImxvY2FsaG9zdCIsImF1ZCI6InVzZXJzIn0.GegIg2GfpvzI0PGuSIzLUsZtYa-jaGgxGP7yb5A7-CU","expiration":"2018-10-23T21:40:20Z"}`
С моего углового клиента, который звонитвеб-интерфейс, вот мой код
loginUser(user) : Observable<boolean> {
var reqHeader = new HttpHeaders({ 'Content-Type': 'application/x-www-urlencoded','No-Auth':'True' });
return this.http
.post('http://localhost:55009/api/login', user )
.map((data: any) => {
this.token = data.token;
localStorage.setItem('userToken', data.token);
let tokenInfo = this.getDecodedAccessToken(data.token);
console.log('token ===> ' + data.token);
console.log('token ===> ' + tokenInfo);
console.log('token ===> ' + this.token);
// this.token = data.token;
// this.tokenExpiration = this.getDecodedAccessToken(data.token).ex;
this.errorMessage = data.errorMessage;
//if (this.errorMessage.length > 0) {
// alert(data.errorMessage);
// return false;
// }
// else {
// alert(data.errorMessage);
return true;
})
// .map((response:any) => response.json())
.catch(this.handleError);
}
private getDecodedAccessToken(token: string): any {
try{
return jwt_decode(token);
}
catch(Error){
return null;
}
}
На моей хромированной консоли я вижу только это
token ===> [object Object]
login.service.ts:41 token ===> null
login.service.ts:43 token ===> [object Object]
Я хочу убедиться, что я получаю действительный токен и могусм. содержание токена и срок действия.Я устанавливаю jwt-decode, но он не работает по возвращении.
Любая помощь очень ценится.
Спасибо