projects/app-base-library/src/lib/angular/services/authentication/token-storage.service.ts
Properties |
|
Methods |
|
Public clear |
clear()
|
Remove tokens
Returns :
void
|
Public getAccessToken |
getAccessToken()
|
Get access token
Returns :
Observable<string>
|
Public getRefreshToken |
getRefreshToken()
|
Get refresh token
Returns :
Observable<string>
|
init | ||||
init(options: )
|
||||
Parameters :
Returns :
void
|
Public setAccessToken | ||||||
setAccessToken(token: string)
|
||||||
Set access token
Parameters :
Returns :
TokenStorage
|
Public setRefreshToken | ||||||
setRefreshToken(token: string)
|
||||||
Set refresh token
Parameters :
Returns :
TokenStorage
|
Public options |
options:
|
Type : object
|
Default value : {
accessTokenId: 'accessToken',
refreshTokenId: 'refreshToken'
}
|
import { Injectable } from '@angular/core';
import { Observable } from 'rxjs/Observable';
@Injectable()
export class TokenStorage {
public options = {
accessTokenId: 'accessToken',
refreshTokenId: 'refreshToken'
};
init(options) {
this.options = options;
}
/**
* Get access token
*/
public getAccessToken(): Observable<string> {
const token: string = <string>localStorage.getItem(this.options.accessTokenId);
return Observable.of(token);
}
/**
* Get refresh token
*/
public getRefreshToken(): Observable<string> {
const token: string = <string>localStorage.getItem(this.options.refreshTokenId);
return Observable.of(token);
}
/**
* Set access token
*/
public setAccessToken(token: string): TokenStorage {
localStorage.setItem(this.options.accessTokenId, token);
return this;
}
/**
* Set refresh token
*/
public setRefreshToken(token: string): TokenStorage {
localStorage.setItem(this.options.refreshTokenId, token);
return this;
}
/**
* Remove tokens
*/
public clear() {
localStorage.removeItem(this.options.accessTokenId);
localStorage.removeItem(this.options.refreshTokenId);
}
}