40 lines
1.1 KiB
Python
40 lines
1.1 KiB
Python
from framework.open_response import OpenResponse
|
|
from abc import abstractmethod
|
|
from time import sleep
|
|
import json
|
|
from framework.open_response import MinCustomException
|
|
|
|
|
|
class Response(OpenResponse):
|
|
"""必须实现Core和Before_Response方法"""
|
|
|
|
def __init__(self):
|
|
super(Response, self).__init__()
|
|
|
|
@abstractmethod
|
|
def core(self) -> None:
|
|
# TODO: 用于处理核心内容, 数据库逻辑等
|
|
pass
|
|
|
|
@abstractmethod
|
|
def before_response(self) -> dict:
|
|
# TODO: 用于创建返回的内容, 以及关闭数据库连接等
|
|
pass
|
|
|
|
|
|
def main_function(response: Response) -> dict:
|
|
"""
|
|
:param response: 重写的Response类
|
|
"""
|
|
try:
|
|
response.core()
|
|
except json.decoder.JSONDecodeError:
|
|
response.build_response_code(response.response_code_enum.RESPONSE_400_BAD_REQUESTS_JSON)
|
|
sleep(1)
|
|
response.echo = True
|
|
except MinCustomException as e:
|
|
response.build_response_code(e.args[0])
|
|
sleep(1)
|
|
response.echo = True
|
|
return response.before_response()
|