javascript-web-client
v1.0.0
Published
A client for making web requests in Javascript.
Downloads
8
Readme
javascript-web-client
Javascript Web Client is exactly what it sounds like!
It's a client for Javascript requests.
Internally, we use the request
npm package to make requests.
However, this package is structured into a class so that it can be extended and used in an object-oriented way!
Javascript Web Client also uses promises instead of callbacks.
Usage
Setup
In package.json
:
dependencies: {
"javascript-web-client": "^1",
...
}
In whatever file:
const WebClient = require('javascript-web-client');
Instantiating the class
Since this is an ES6 class, it must be instantiated before it can be used.
const WebClient = require('javascript-web-client');
const myApiWebClient = new WebClient('https://myApi.com/');
It's very easy to instantiate. Just pass one string argument in. This is the base URL that will be used in all requests. This argument is required. If you want a generic web client that can hit any endpoint, pass in an empty string.
Making an API call
const WebClient = require('javascript-web-client');
const myApiWebClient = new WebClient('https://myApi.com/');
const path = '/path/to/endpoint';
const options = {
/* request.js options object
see https://github.com/request/request
*/
}
myApiWebClient.request(path, options)
.then(response => {
console.log(response); // This will log the entire response.
});
Built-in formatting methods
There are 3 built-in methods that will parse the response to return the part you care about, in the format you want.
requestAsJson
: Converts thebody
property ofresponse
to JSON, and gives you the entireresponse
object.requestBody
: Gives you thebody
property ofresponse
, discarding the rest ofresponse
.requestBodyAsJson
: Converts thebody
property ofresponse
to JSON and gives you the converted body.
const WebClient = require('javascript-web-client');
const myApiWebClient = new WebClient('https://myApi.com/');
const path = '/path/to/endpoint';
const options = {
/* request.js options object
see https://github.com/request/request
*/
}
myApiWebClient.requestBodyAsJson(path, options)
.then(response => {
console.log(response); // This will log the response body, as an object.
});