A lightweight HTTP client optimized for use with actions, TypeScript with generics and async await.
- 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
npm install @actions/http-client --save
See the HTTP tests for detailed examples.
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.
To enable detailed console logging of all HTTP requests and responses, set the NODE_DEBUG environment varible:
export NODE_DEBUG=http
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+.
We follow semver and will hold compatibility between major versions and increment the minor version with new features and capabilities (while holding compat).
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