javascript-web-client

1.0.0 • Public • Published

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 the body property of response to JSON, and gives you the entire response object.
  • requestBody: Gives you the body property of response, discarding the rest of response.
  • requestBodyAsJson: Converts the body property of response 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.
    });

Versions

Current Tags

  • Version
    Downloads (Last 7 Days)
    • Tag
  • 1.0.0
    3
    • latest

Version History

  • Version
    Downloads (Last 7 Days)
    • Published
  • 1.0.0
    3

Package Sidebar

Install

npm i javascript-web-client

Weekly Downloads

3

Version

1.0.0

License

ISC

Last publish

Collaborators

  • hudson155