Skip to content

A lightweight HTTP client optimized for use with actions, TypeScript with generics and async await.

License

Notifications You must be signed in to change notification settings

hughgoscott/http-client

 
 

Repository files navigation

Actions Http-Client

Http Status

A lightweight HTTP client optimized for use with actions, TypeScript with generics and async await.

Features

  • HTTP client with TypeScript generics and async/await/Promises
  • Typings included so no need to acquire separately (great for intellisense and no versioning drift)
  • Proxy support just works with actions and the runner
  • Targets ES2019 (runner runs actions with node 12+). Only supported on node 12+.
  • Basic, Bearer and PAT Support out of the box. Extensible handlers for others.
  • Redirects supported

Features and releases here

Install

npm install @actions/http-client --save

Samples

See the HTTP tests for detailed examples.

Errors

HTTP

The HTTP client does not throw unless truly exceptional.

  • A request that successfully executes resulting in a 404, 500 etc... will return a response object with a status code and a body.
  • Redirects (3xx) will be followed by default.

See HTTP tests for detailed examples.

Debugging

To enable detailed console logging of all HTTP requests and responses, set the NODE_DEBUG environment varible:

export NODE_DEBUG=http

Node support

The http-client is built using the latest LTS version of Node 12. It may work on previous node LTS versions but it's tested and officially supported on Node12+.

Support and Versioning

We follow semver and will hold compatibility between major versions and increment the minor version with new features and capabilities (while holding compat).

Contributing

We welcome PRs. Please create an issue and if applicable, a design before proceeding with code.

once:

$ npm install

To build:

$ npm run build

To run all tests:

$ npm test

About

A lightweight HTTP client optimized for use with actions, TypeScript with generics and async await.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 99.6%
  • JavaScript 0.4%