Collection of useful network utillities to be integrated with Angular project
npm install @vts-kit/angular-network
npm install @vts-kit/angular-network
`
Guideline
$3
RestClient provide abilities to interact with RESTful API through builder pattern.
Import
`
// app.module.ts
import { VtsRestModule, RestClientOptions, VtsRestModuleConfig } from "@vts-kit/angular-network"
// Default config
const NETWORK_MODULE_CONFIG: VtsRestModuleConfig = {
defaultConfig: new RestClientOptions()
.setBaseUrl('https://')
.setHeader('', '')
.setParam('', '')
.setRetry(3),
};
@NgModule({
declarations: [AppComponent],
imports: [
...,
VtsRestModule.forRoot(NETWORK_MODULE_CONFIG)
// Without default config
// VtsRestModule.forRoot()
]
})
export class AppModule {}
`
Usage
Pattern:
`
client
.setHeader("key", "value")
.setTimeout(60000)
... // More builder
.obserseBody() // or obserseEvents() or obserseResponse()
.get("") // or post, patch, put, options, delete
.subscribe(...)
`
Example:
`
// name.any.ts
@Injectable({
providedIn: 'root',
})
export class Service {
constructor(private client: RestClient) {}
callApi() {
this.client
.obserseBody()
.get('/posts')
.subscribe({
next: (d) => console.log(d[0].title),
error: (e) => console.log(e),
});
}
}
``