Caching support for Async httpx Client. Cloned from https://github.com/kovan/httpx-caching, https://github.com/johtso/httpx-caching
Project description
Caching for HTTPX.
Note: Early development / alpha, use at your own risk.
This package adds caching functionality to HTTPX
Adapted from Eric Larson's fantastic CacheControl for requests.
Project goals:
- Sans-io caching protocol
- Fully async compatible
- Support multiple http clients (currently only supports httpx)
Limitations:
- Currently only has in-memory cache storage (async redis would be nice!)
- Test suite was taken wholesale from CacheControl, so still uses a test server and mocking rather than taking advantage of the sans-io implementation.
Usage:
import asyncio
from httpx import AsyncClient
from httpx_caching import CachingClient
client = AsyncClient()
client = CachingClient(client)
async def run_example():
await client.get("http://example.com")
loop = asyncio.get_event_loop()
loop.run_until_complete(run_example())
Documentation:
TODO
See CacheControl's documentation for general documentation of the caching approach.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
http-caching4-0.1.0.tar.gz
(21.5 kB
view hashes)
Built Distribution
Close
Hashes for http_caching4-0.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a85273563b2c0fecd993876244ac9f398c8638747b3dc3be36fec381471633c8 |
|
MD5 | 1b842efc5dafdc2750700c9b018ecec0 |
|
BLAKE2b-256 | fb2c0e5ffc1bbdbc0273c1d0012d88ff9d1a423b7b3c5e79b03307003511fad8 |