expiration¶
Summary¶
|
Get the appropriate expiration for the given response, in order of precedence: 1. |
|
Convert a relative time value or delta to an absolute datetime, if it’s not already |
|
Check for a matching per-URL expiration, if any |
|
Determine if a URL matches a pattern |
Module Contents¶
Functions for determining cache expiration
-
get_expiration
(response, request_expire_after=None, session_expire_after=None, urls_expire_after=None)¶ Get the appropriate expiration for the given response, in order of precedence: 1. Per-request expiration 2. Per-URL expiration 3. Per-session expiration
- Return type
- Returns
An absolute expiration
datetime
orNone
- Parameters
response (aiohttp.client_reqrep.ClientResponse) –
request_expire_after (Union[None, int, float, datetime.datetime, datetime.timedelta]) –
session_expire_after (Union[None, int, float, datetime.datetime, datetime.timedelta]) –
urls_expire_after (Optional[Dict[str, Union[None, int, float, datetime.datetime, datetime.timedelta]]]) –
-
get_expiration_datetime
(expire_after)¶ Convert a relative time value or delta to an absolute datetime, if it’s not already
- Return type
- Parameters
expire_after (Union[None, int, float, datetime.datetime, datetime.timedelta]) –
-
get_expiration_for_url
(url, urls_expire_after=None)¶ Check for a matching per-URL expiration, if any
-
url_match
(url, pattern)¶ Determine if a URL matches a pattern
- Parameters
- Return type
Example
>>> url_match('https://httpbin.org/delay/1', 'httpbin.org/delay') True >>> url_match('https://httpbin.org/stream/1', 'httpbin.org/*/1') True >>> url_match('https://httpbin.org/stream/2', 'httpbin.org/*/1') False