from web_apps import app
from flask_cors import CORS
from utils.common_utils import import_class
from blueprints import BLUEPRINT_DICT
from utils.log_utils import get_sys_logger
from utils.auth import get_access_info
from flask import request, g
import time
for app_name, dic in BLUEPRINT_DICT.items():
bp = import_class(dic['blueprint'])
app.register_blueprint(bp, url_prefix=dic['url_prefix'])
sys_logger = get_sys_logger()
@app.before_request
def set_g():
g.start_time = int(round(time.time() * 1000))
@app.after_request
def write_access_log(response):
"""
请求接口后写入日志
:param response:
:return:
"""
white_list = ['/api/data_interface/query']
if request.path not in white_list:
access_info = get_access_info()
duration = round((time.time() * 1000 - g.start_time) / 1000, 3)
access_info['duration'] = duration
sys_logger.info(access_info)
return response
CORS(app, supports_credentials=True)
if __name__ == '__main__':
app.run(host='0.0.0.0', port=8001, debug=True)