summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVincent Post <cent@spline.de>2020-08-07 21:24:15 +0200
committerVincent Post <cent@spline.de>2020-08-07 21:24:15 +0200
commit3753ceaad2fa1ad91bc5da5a9f28743940ec018a (patch)
tree1fe268d95416b6c84277454fb10ca48acc0a7270
parent77fa36825b286a47ea729bcf8b9813f75ca2be5b (diff)
downloadweb-3753ceaad2fa1ad91bc5da5a9f28743940ec018a.tar.gz
web-3753ceaad2fa1ad91bc5da5a9f28743940ec018a.tar.bz2
web-3753ceaad2fa1ad91bc5da5a9f28743940ec018a.zip
compact_json is no longer importable from itsdangerous
-rw-r--r--accounts/utils/login.py19
1 files changed, 16 insertions, 3 deletions
diff --git a/accounts/utils/login.py b/accounts/utils/login.py
index 4267827..65e49ac 100644
--- a/accounts/utils/login.py
+++ b/accounts/utils/login.py
@@ -3,7 +3,20 @@ from flask import current_app
from flask_login import LoginManager, current_user
from functools import wraps
from werkzeug.exceptions import Forbidden
-from itsdangerous import base64_decode, base64_encode, compact_json
+from itsdangerous import base64_decode, base64_encode
+import json
+
+
+class _compact_json:
+ @staticmethod
+ def loads(payload):
+ return json.loads(payload)
+
+ @staticmethod
+ def dumps(obj, **kwargs):
+ kwargs.setdefault("ensure_ascii", False)
+ kwargs.setdefault("separators", (",", ":"))
+ return json.dumps(obj, **kwargs)
def create_login_manager():
@@ -25,11 +38,11 @@ def create_login_manager():
def create_userid(username, password):
userid = (username, password)
- return base64_encode(compact_json.dumps(userid))
+ return base64_encode(_compact_json.dumps(userid))
def parse_userid(value):
- return compact_json.loads(base64_decode(value))
+ return _compact_json.loads(base64_decode(value))
def logout_required(f):