1.0.3 • Published 5 years ago
api-request-builder v1.0.3
API Request Builder
Simple request builder on top of Axios that allows pre-configured options, query params parser and errors to text with a Lang option
Todo list
- ⏳ Full docs
- ⏳ Tests and examples
- ⏳ Cancel/Abort request
Installation
You can install using npm:
npm install api-request-builderUsage
// Load the module
const apiRequestBuilder = require('api-request-builder')
// Default params for all requests
const DEFAULT_PARAMS = {
server: "/api", // Self domain requests to '/api' path
timeout: 5000 // 5s timeout
}
// Initialize
const api = apiRequestBuilder( DEFAULT_PARMS )
/**
* Your code ♥
*/Params
This library allows you to set a default set of params for all the request.
Config params
| Param | Type | Default | Description |
|---|---|---|---|
| validMethods | Array \ | ["GET","POST","PUT","DELETE"] | Allowed HTTP Methods |
| lang | Object | LANG | Lang configuration |
| tokenAsParam | Boolean | false | Append token (if exist) in the query params |
| translateErrors | Boolean | true | Parse request errors objects and return strings based in the lang param |
Request params
| Param | Type | Default | Description |
|---|---|---|---|
| server | String | "http://localhost" | API Server |
| endpoint | String | Request Enpoint path (relative to server) | |
| path | String | Request URI path (relative to server/endpoint) | |
| vars | Object | {} | URI path variables values |
| params | Object | {} | Query params |
| mime | String | "application/json" | Request Content-Type header |
| headers | Object | {} | Request headers |
| token | String | Request Auth token | |
| timeout | Number | 50000 | Request timeout in miliseconds |