0.0.2 • Published 3 years ago
@lieberweiss/http-service v0.0.2
lieberweiss_module_service
Summary
I. Release a new version
- Run
yarn build - Run
yarn new-version - Run
yarn publish - Commit and push changes
II. Installation
Run npm install @lieberweiss/service
To import the lib, use const service = require('@lieberweiss/service.
III. Usage
The service function takes 3 mandatory parameters :
serviceName(type: String)url(type: String)commands(type: Object)
It returns a function which can be used to call an API, taking 3 parameters :
command(type: String)args(type: Object)auth(type: Function, optional)files(type:Array, optional)
files is used when one want to post files. files object array contains the following object : {name, originalFilename, rs}:
nameis the fieldname of the file (default tofile)originalFilenameorginal filename of the filersis a of type<fs.ReadStream>
For a full implementation, see mock-service.js
IV. Command props
Each command has 2 mandatory props:
route(type: String | Function)method(type: String, enum: 'GET', 'POST', 'DELETE', 'PUT')
When route is a function, service will call the function and pass three arguments : args, auth, files.
You can also provide optional parameters:
query(type: Array[String | ArrayString]) : every String queryParam then becomes required, unless you provide an Array instead of a String (e.g: 'queryParam', 'o'body: (type: Array[String | ArrayString]) : every String bodyParam then becomes required, unless you provide an Array instead of a String (e.g: 'bodyParam', 'o'stream(type: Boolean, default: false): if true, the response is returned without being processed, otherwise you will receive a json processed responsewithStatus(type: Boolean, default: false): if true, the response will be an Object{ status, payload }, with payload containing the returned response dataerrorField(type: String, default: 'message'): The field to use in the response in case of error.
0.0.2
3 years ago