supra-http
TypeScript icon, indicating that this package has built-in type declarations

1.8.4 • Public • Published

Documentation will be released soon.

CircleCI codecov npm version

Installing

npm i supra-http

Simple Usage

Get

client.request('apiCallName', 'https://my-api/endpoint', {
  method: 'get',
  json: true
})
  .then(response => console.log(response.json))
  .catch(_ => console.log(_));

Post

client.request('apiCallName', 'https://my-api/endpoint', {
  method: 'post',
  body: {
    test: true  
  },
  json: true
})
  .then(response => console.log(response.json))
  .catch(_ => console.log(_));

Circuit Breaking

client.request('apiCallName', 'https://my-api/endpoint', {
  timeout: 1000,
  allowWarmUp: true,
  errorThresholdPercentage: 50,
  resetTimeout: 10000,
  enabled: true,
  method: 'get',
  json: true
})
  .then(response => console.log(response.json))
  .catch(_ => console.log(_));

You can read more about properties from opossum.

Decompression

Supra supports gzip and brotli decompressions over zlib. So it requires at least NodeJs 10.17.x

Benchmarks

supra with circuit x 8,779 ops/sec ±3.31% (76 runs sampled)
supra without circuit x 8,625 ops/sec ±4.68% (68 runs sampled)
requestretry x 3,672 ops/sec ±7.24% (67 runs sampled)
request x 5,092 ops/sec ±4.42% (73 runs sampled)
native http request 1.0 x 9,874 ops/sec ±5.82% (67 runs sampled)
native http request 1.1 x 9,681 ops/sec ±6.36% (73 runs sampled)

Readme

Keywords

none

Package Sidebar

Install

npm i supra-http

Weekly Downloads

874

Version

1.8.4

License

ISC

Unpacked Size

55.7 kB

Total Files

30

Last publish

Collaborators

  • trendyol-js