INNER CODE UNIT · Python
csrf_token
ab77/netflix-proxy · auth/auth.py:139
def csrf_token():
if not 'csrf_token' in session:
from uuid import uuid4
session.csrf_token = uuid4().hex
return session.csrf_token
def csrf_protected(f):
def decorated(*args, **kwargs):
inp = web.input()
if not ('csrf_token' in inp and inp.csrf_token == session.pop('csrf_token', None)):
raise web.HTTPError(
"400 Bad request",
{'content-type':'text/html'},
"""Cross-site request forgery (CSRF) attempt (or stale browser form). <a href="">Back to the form</a>.""")
return f(*args, **kwargs)
return decorated