0.0.2 • Published 1 year ago

@alphaz/interceptor v0.0.2

Weekly downloads
-
License
-
Repository
-
Last release
1 year ago

Interceptor

Usage Bearer auth interceptor

  1. Create Storage Service implements IStorage for example:
@Injectable({
  providedIn: 'root',
})
export class StorageService implements IStorage {
  constructor() {}
  setToken(token: string): void {
    localStorage.setItem('token', token);
  }

  getToken(): string | null {
    return localStorage.getItem('token');
  }
}
  1. in app.config.ts in providers section add this
providers: [
    ...
    provideInterceptor(new StorageService(), <ACCESS_TOKEN_KEY>),
    provideHttpClient(withInterceptors([withAuthorizationHeader])),
    ...
]

where new StorageService() - service for token <ACCESS_TOKEN_KEY> - string key for access token property in response object OR

providers: [
    ...
    {
       provide: STORAGE_TOKEN,
       useFactory: (service: StorageService) => service,
       deps: [StorageService],
    },
    {
       provide: ACCESS_TOKEN_KEY_NAME,
       useValue: <ACCESS_TOKEN_KEY>,
    },
    ...
]
0.0.2

1 year ago

0.0.1

1 year ago