dbwebapi-client
TypeScript icon, indicating that this package has built-in type declarations

1.1.0 • Public • Published

DbWebApi Client for Angular 6.0+

If your project is Angular 6.0 or higher, the npm package dbwebapi-client can be used to simplify your http client coding.

> npm i dbwebapi-client

app.module.ts

import { DbwebapiClientModule } from 'dbwebapi-client';
 
@NgModule({
  declarations: [ // ...
  ],
  imports: [ // ...
    DbwebapiClientModule.forRoot()
  ],
  providers: [ // ...
  ],
  bootstrap: [AppComponent]
})
export class AppModule { }

Then your Angular service can inherit from DbWebApiClient class, as shown in the following example:

import { Injectable } from "@angular/core";
import { HttpClient } from "@angular/common/http";
import { Observable } from "rxjs";
import { map } from 'rxjs/operators';
 
import { DbWebApiClient, JsonTimeZoneKind } from 'dbwebapi-client';
 
@Injectable({ providedIn: 'root' })
export class MyDbWebApiService extends DbWebApiClient {
    constructor(_http: HttpClient) {
        super(_http, 'http://my-base-url-path.');
        Date.jsonTimeZoneKind = JsonTimeZoneKind.Unspecified;
    }
 
    invokeMyStoredProcedure(inParams: object): Observable<MyTypescriptModel> {
        return super.post('my_stored_procedure', inParams).pipe(map(data => new MyTypescriptModel(data.ResultSets)));
    }
}

The example method will return an Observable MyTypescriptModel instance if the constructor of MyTypescriptModel class transforms flat result sets to local hierarchical data model.

If you need to control the details of http options (such as: credentials, headers), you can use the property httpOptions to set it up.

https://github.com/DataBooster/DbWebApi/tree/master/Client/Angular/projects/dbwebapi-client-lib#readme

Package Sidebar

Install

npm i dbwebapi-client

Weekly Downloads

1

Version

1.1.0

License

MIT

Unpacked Size

189 kB

Total Files

29

Last publish

Collaborators

  • abelcheng