0.0.18 • Published 5 years ago

trivial-api v0.0.18

Weekly downloads
1
License
WTFPL
Repository
bitbucket
Last release
5 years ago

Trivial API interaction

WARNING alpha version. Do not use!

Very thin utility wrapper around fetch(). Returns Promises.

Current limitations

  • Only works with APIs that expect and return JSON.
  • Only handles authentication by bearer token, which is sent in headers.

Usage

Typical example:

api.write({ url:url, data:data })
  .then(
    (response) => { ...success... },
    (response) => { ...failure...
      throw new api.error("That didn't work!")
  }).then((x) => { 
    ...do something with x...
  }).catch((e) => {
    if (e.isTrivialApiError) {
      ...this is something you threw above using api.error...
    } else {
      ...some other error...
    }
  })

By default, api.error() automatically logs to console.error(). Silence this by calling it with an object: { message: "...", logging: false }

This object expects keys message and, optionally, logging. However, any other key:value pairs can be added too. These can be accessed like so:

let e = new api.error({message: "Some message", someKey: "some value"})
console.log(e.get.someKey)

Certificate errors

If you encounter certificate errors when using Node, you can try setting the environment variable NODE_EXTRA_CA_CERTS appropriately. This ensures Node is aware of certificates you may be using in your local web-server. For example:

sudo NODE_EXTRA_CA_CERTS=/etc/letsencrypt/live/path-to-your-certificates/chain.pem node your-script.js

This great tidbit comes courtesy of https://www.npmjs.com/package/ssl-root-cas

0.0.18

5 years ago

0.0.17

5 years ago

0.0.14

5 years ago

0.0.12

5 years ago

0.0.11

5 years ago

0.0.10

5 years ago

0.0.9

5 years ago

0.0.8

5 years ago