summaryrefslogtreecommitdiff
path: root/requests_cache
diff options
context:
space:
mode:
authorJordan Cook <jordan.cook.git@proton.me>2022-10-20 13:17:57 -0500
committerJordan Cook <jordan.cook.git@proton.me>2022-10-20 13:23:45 -0500
commit10fba0bcb772a2e46e758e4173d1ab99ec287e93 (patch)
treef16d1135f034ed8af8ac2aa0441efd7ba1072755 /requests_cache
parentacdbe633a80ae9a8d9deb20c1255124f7e159b33 (diff)
downloadrequests-cache-10fba0bcb772a2e46e758e4173d1ab99ec287e93.tar.gz
Add support for header values as bytes
Diffstat (limited to 'requests_cache')
-rw-r--r--requests_cache/policy/directives.py4
1 files changed, 2 insertions, 2 deletions
diff --git a/requests_cache/policy/directives.py b/requests_cache/policy/directives.py
index 889db22..3be50c4 100644
--- a/requests_cache/policy/directives.py
+++ b/requests_cache/policy/directives.py
@@ -4,7 +4,7 @@ from typing import Optional
from attr import define, field
from requests.models import CaseInsensitiveDict
-from .._utils import get_valid_kwargs, try_int
+from .._utils import decode, get_valid_kwargs, try_int
from ..models import RichMixin
from . import HeaderDict, get_expiration_seconds
@@ -33,7 +33,7 @@ class CacheDirectives(RichMixin):
def from_headers(cls, headers: HeaderDict):
"""Parse cache directives and other settings from request or response headers"""
headers = CaseInsensitiveDict(headers)
- directives = headers.get('Cache-Control', '').split(',')
+ directives = decode(headers.get('Cache-Control', '')).split(',')
kv_directives = dict(_split_kv_directive(value) for value in directives)
kwargs = get_valid_kwargs(
cls.__init__, {k.replace('-', '_'): v for k, v in kv_directives.items()}