Asynchronous parallel HTTP/2 and HTTP/1.1 client built on the Amp concurrency framework
This package provides an asynchronous HTTP client for PHP based on Amp. Its API simplifies standards-compliant HTTP resource traversal and RESTful web service consumption without obscuring the underlying protocol. The library manually implements HTTP over TCP sockets; as such it has no dependency on
- Requests asynchronously for full single-threaded concurrency
- Pools persistent keep-alive connections
- Transparently follows redirects
- Decodes gzipped entity bodies
- Exposes headers and message data
- Streams entity bodies for memory management with large transfers
- Supports all standard and custom HTTP method verbs
- Simplifies HTTP form submissions
- Implements secure-by-default TLS (
- Supports cookies and sessions
- Functions seamlessly behind HTTP proxies
- Model all code as closely as possible to the relevant HTTP protocol RFCs
- Implement an HTTP/1.1 client built on socket streams with no
This package can be installed as a Composer dependency.
composer require amphp/http-client
Documentation is bundled within this repository in the
More extensive code examples reside in the
amphp/http-client follows the semver semantic versioning specification like all other
Prior to version 4.0, this package was named
amphp/artax. While older tags also exist in this repository,
amphp/artax should be used as package name for versions prior to 4.0.
|Version||Bug Fixes Until||Security Fixes Until|
|4.x||Under development||Under development|
|3.x||Supported, no end date, yet.||Supported, no end date, yet.|
If you discover any security related issues, please email
email@example.com instead of using the issue tracker.
The MIT License (MIT). Please see
LICENSE for more information.