File

projects/app-base-library/src/lib/angular/services/authentication/token-storage.service.ts

Index

Properties
Methods

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 :
Name Optional
options no
Returns : void
Public setAccessToken
setAccessToken(token: string)

Set access token

Parameters :
Name Type Optional
token string no
Returns : TokenStorage
Public setRefreshToken
setRefreshToken(token: string)

Set refresh token

Parameters :
Name Type Optional
token string no
Returns : TokenStorage

Properties

Public options
options: object
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);
  }
}

results matching ""

    No results matching ""