Useful interceptors for Angular
npm install angular-interceptors --saveCache all HTTP GET requests.
GETrequests with adisable-cacheheader will not be cached.
import {CacheInterceptorModule} from 'angular-interceptors';
@NgModule({
imports: [
CacheInterceptorModule.forRoot(3 * 1000) // Max age in milliseconds. In this case 3 seconds. Defaults to 5 seconds.
]
})Example:
this.http.get('https://some.url'); // --> https://some.url
this.http.get('https://some.url');
setTimeout(() => {
this.http.get('https://some.url'); // --> https://some.url
}, 5001);Change http:// to https:// in HTTP request urls.
import {EnsureHttpsInterceptorModule} from 'angular-interceptors';
@NgModule({
imports: [
EnsureHttpsInterceptorModule.forRoot()
]
})Example:
this.http.get('http://some.url'); // --> https://some.url
this.http.get('https://some.url'); // --> https://some.urlPrefix HTTP request urls.
import {PrefixUrlInterceptorModule} from 'angular-interceptors';
@NgModule({
imports: [
PrefixUrlInterceptorModule.forRoot('https://some.url') // prefix
]
})Example:
this.http.get('/api/user'); // --> https://some.url/api/userThe configurations are also available as InjectionTokens:
| InjectionToken | Module |
|---|---|
MAX_AGE_MS |
CacheInterceptorModule |
PREFIX |
PrefixUrlInterceptorModule |
import {MAX_AGE_MS, PREFIX} from 'angular-interceptors';
@NgModule({
providers: [
{provide: MAX_AGE_MS, useValue: 3 * 1000},
{provide: PREFIX, useValue: 'https://some.url'}
]
})