diff --git a/admin/server/auth.py b/admin/server/auth.py index 58a900afd..6c8bc2cb8 100644 --- a/admin/server/auth.py +++ b/admin/server/auth.py @@ -31,7 +31,7 @@ from common.constants import ActiveEnum, StatusEnum from api.utils.crypt import decrypt from common.misc_utils import get_uuid from common.time_utils import current_timestamp, datetime_format, get_format_time -from common.connection_utils import construct_response +from common.connection_utils import sync_construct_response from common import settings @@ -130,7 +130,7 @@ def login_admin(email: str, password: str): user.last_login_time = get_format_time() user.save() msg = "Welcome back!" - return construct_response(data=resp, auth=user.get_id(), message=msg) + return sync_construct_response(data=resp, auth=user.get_id(), message=msg) def check_admin(username: str, password: str): diff --git a/common/connection_utils.py b/common/connection_utils.py index 0f765d57e..11d49cb62 100644 --- a/common/connection_utils.py +++ b/common/connection_utils.py @@ -120,3 +120,23 @@ async def construct_response(code=RetCode.SUCCESS, message="success", data=None, response.headers["Access-Control-Allow-Headers"] = "*" response.headers["Access-Control-Expose-Headers"] = "Authorization" return response + + +def sync_construct_response(code=RetCode.SUCCESS, message="success", data=None, auth=None): + import flask + result_dict = {"code": code, "message": message, "data": data} + response_dict = {} + for key, value in result_dict.items(): + if value is None and key != "code": + continue + else: + response_dict[key] = value + response = flask.make_response(jsonify(response_dict)) + if auth: + response.headers["Authorization"] = auth + response.headers["Access-Control-Allow-Origin"] = "*" + response.headers["Access-Control-Allow-Method"] = "*" + response.headers["Access-Control-Allow-Headers"] = "*" + response.headers["Access-Control-Allow-Headers"] = "*" + response.headers["Access-Control-Expose-Headers"] = "Authorization" + return response