kopia lustrzana https://github.com/simonw/datasette
Default actor_from_request hook supporting ds_actor signed cookie
Refs #784, refs #699pull/703/head
rodzic
9f3d4aba31
commit
57cf5139c5
|
|
@ -0,0 +1,18 @@
|
|||
from datasette import hookimpl
|
||||
from itsdangerous import BadSignature
|
||||
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:
|
||||
return None
|
||||
ds_actor = cookies["ds_actor"].value
|
||||
try:
|
||||
return datasette.unsign(ds_actor, "actor")
|
||||
except BadSignature:
|
||||
return None
|
||||
Ładowanie…
Reference in New Issue