diff options
Diffstat (limited to 'api/decorators.py')
-rw-r--r-- | api/decorators.py | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/api/decorators.py b/api/decorators.py new file mode 100644 index 0000000..b60cc05 --- /dev/null +++ b/api/decorators.py @@ -0,0 +1,19 @@ +from functools import wraps + +from django.http import JsonResponse + + +def identity_required(function): + """ + API version of the identity_required decorator that just makes sure the + token is tied to one, not an app only. + """ + + @wraps(function) + def inner(request, *args, **kwargs): + # They need an identity + if not request.identity: + return JsonResponse({"error": "identity_token_required"}, status=400) + return function(request, *args, **kwargs) + + return inner |