angular2-xmlrpc
v1.0.6
Published
An Angular service which provides XML-RPC communication methods
Downloads
23
Readme
Angular2-Xmlrpc
An Angular (9+) service which provides XML-RPC communication methods.
This library was generated with Angular CLI version 11.2.6. Dependencies are requiring Angular 9, but this can probably be easily adapted to anything greater or equal to Angular 2.
This is actually a port from the AngularJS library Angular-Xmlrpc. NOTE: IE support has been dropped altogether.
Installation
npm install angular2-xmlrpc --save
How to use it ?
Configuration
First of all, add a dependency in your module:
import { XmlrpcModule } from 'angular2-xmlrpc'
@NgModule({
...
imports: [
...
XmlrpcModule
],
...
})
export class AppModule { }
You can use it in your application as any other service, and inject it in the constructor as usual.
import { XmlrpcService } from 'angular2-xmlrpc'
constructor(..., private xmlrpc:XmlrpcService, ...) {
}
XML-RPC Call
There is only one main method to call an XML-RPC method. In order to pass parameters, you have to wrap them in an array:
const xmlrpcCall = this.xmlrpc.callMethod(
'http://localhost:8080/xmlrpc/endpoint',
'method-name',
['string-param-1', 1, {'obj-param-3': {val1: 1, val2: 'x'}}]
)
The XML response from the server is wrapped in an Observable
, and can be parsed to a JS object with the parseResponse
method:
xmlrpcCall.subscribe(data => console.log(this.xmlrpc.parseResponse(data)))
Custom Headers
to set custom headers:
this.xmlrpc.setHeaders({
'Custom-Header-1': 'Value-1',
'Custom-Header-2': ['Value-2', 'Value-3', 'Value-4']
})
- Note: this method returns an instance of HttpHeaders that will be used in the Angular HTTP request
Build & Test (Developers)
To build the project create an angular workspace (or use an existing one). For example:
ng new ng-workspace --create-application false
Create the library project:
ng generate library angular2-xmlrpc
fetch this repo from inside the project folder and buid it as library module from angular:
ng build angular2-xmlrpc
ng test angular2-xmlrpc