New request.cookies property

This commit is contained in:
Simon Willison 2020-06-02 14:06:53 -07:00
commit 1d0bea157a
3 changed files with 12 additions and 7 deletions

View file

@ -5,14 +5,9 @@ from http.cookies import SimpleCookie
@hookimpl
def actor_from_request(datasette, request):
cookies = SimpleCookie()
cookies.load(
dict(request.scope.get("headers") or []).get(b"cookie", b"").decode("utf-8")
)
if "ds_actor" not in cookies:
if "ds_actor" not in request.cookies:
return None
ds_actor = cookies["ds_actor"].value
try:
return datasette.unsign(ds_actor, "actor")
return datasette.unsign(request.cookies["ds_actor"], "actor")
except BadSignature:
return None