response

Summary

CachedResponse(method, reason, status, url, ...)

A dataclass containing cached response information, used for serialization.

CachedStreamReader([body])

A StreamReader loaded from previously consumed response content.

set_response_defaults(response)

Set some default CachedResponse values on a ClientResponse object, so they can be expected to always be present

Module Contents

class CachedResponse(method, reason, status, url, version, body=b'', content=None, links=NOTHING, cookies=None, created_at=NOTHING, encoding='utf-8', expires=None, raw_headers=NOTHING, real_url=None, history=NOTHING, last_used=NOTHING)

Bases: object

A dataclass containing cached response information, used for serialization. It will mostly behave the same as a aiohttp.ClientResponse that has been read, with some additional cache-related info.

Parameters
Return type

None

_body: Any
_content: aiohttp.StreamReader
property _released
async close()
property connection
property content: aiohttp.StreamReader
Return type

StreamReader

property content_disposition: Optional[aiohttp.ContentDisposition]

Get Content-Disposition headers, if any

Return type

Optional[ContentDisposition]

cookies: http.cookies.SimpleCookie
created_at: datetime.datetime
encoding: str
expires: Optional[datetime.datetime]
property from_cache
async classmethod from_client_response(client_response, expires=None)

Convert a ClientResponse into a CachedReponse

Parameters
get_encoding()
property headers: multidict._multidict.CIMultiDictProxy

Get headers as an immutable, case-insensitive multidict from raw headers

Return type

CIMultiDictProxy

history: Iterable
property host: str
Return type

str

property is_expired: bool

Determine if this cached response is expired

Return type

bool

async json(encoding=None, **kwargs)

Read and decode JSON response

Return type

Optional[Dict[str, Any]]

Parameters

encoding (Optional[str]) –

last_used: datetime.datetime

Convert stored links into the format returned by ClientResponse.links

Return type

MultiDictProxy

method: str
property ok: bool

Returns True if status is less than 400, False if not

Return type

bool

raise_for_status()
raw_headers: Tuple[Tuple[bytes, bytes], ...]
async read()

Read response payload.

Return type

bytes

real_url: Union[str, yarl.URL]
reason: str
release()
property request_info: aiohttp.RequestInfo
Return type

RequestInfo

reset()

Reset the stream reader to re-read a streamed response

async start()
status: int
async terminate()
async text(encoding=None, errors='strict')

Read response payload and decode

Return type

str

Parameters
url: yarl.URL
version: str
async wait_for_close()
class CachedStreamReader(body=None)

Bases: aiohttp.StreamReader

A StreamReader loaded from previously consumed response content. This feeds cached data into the stream so it can support all the same behavior as the original stream: async iteration, chunked reads, etc.

Parameters

body (bytes) –

_to_str_tuples(data)
Return type

List[Tuple[str, str]]

Parameters

data (Mapping) –

_to_url_multidict(data)
Return type

MultiDict

Parameters

data (List[Tuple[str, str]]) –

set_response_defaults(response)

Set some default CachedResponse values on a ClientResponse object, so they can be expected to always be present

Return type

Union[ClientResponse, CachedResponse]

Parameters

response (Union[aiohttp.ClientResponse, aiohttp_client_cache.response.CachedResponse]) –