Awesome
:warning: This package has been replaced by http-client
artax
Artax is 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 ext/curl
.
Features
- 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 (
https://
) - Supports cookies and sessions
- Functions seamlessly behind HTTP proxies
Project Goals
- Model all code as closely as possible to the relevant HTTP protocol RFCs
- Implement an HTTP/1.1 client built on raw socket streams with no
libcurl
dependency
Installation
This package can be installed as a Composer dependency.
composer require amphp/artax
Documentation
Documentation is bundled within this repository in the docs
directory.
Examples
More extensive code examples reside in the examples
directory.
Versioning
amphp/artax
follows the semver semantic versioning specification like all other amphp
packages.
Version | Bug Fixes Until | Security Fixes Until |
---|---|---|
3.x | Supported, no end date, yet. | Supported, no end date, yet. |
2.x | Unmaintained. | Unmaintained. |
1.x | Unmaintained. | Unmaintained. |
Security
If you discover any security related issues, please email me@kelunik.com
instead of using the issue tracker.
License
The MIT License (MIT). Please see LICENSE
for more information.