daily/main.py

47 lines
1.5 KiB
Python
Raw Permalink Normal View History

2023-02-28 16:28:48 +08:00
import os
import uvicorn
from fastapi import FastAPI
2023-06-28 16:49:21 +08:00
from fastapi.exceptions import RequestValidationError
2023-02-28 16:28:48 +08:00
from fastapi.middleware.cors import CORSMiddleware
2023-06-29 17:24:38 +08:00
from Config.log import uvicorn_log_config
2023-06-30 13:39:24 +08:00
from Mods.Notice.Utils import daily_notice
from Router import DailyRouter, UserRouter, AuthRouter, FileRouter
2023-06-28 16:49:21 +08:00
from Utils.MiddlewareUtils import exception_handler, validation_exception_handler
2023-07-03 11:04:15 +08:00
from Utils.PrintUtils import hook_print
2023-02-28 16:28:48 +08:00
from Utils.SqlAlchemyUtils import init_database, get_db_i
from fastapi.staticfiles import StaticFiles
2023-04-19 17:15:50 +08:00
from Mods import Router as ModsRouter
2023-07-03 11:04:15 +08:00
hook_print()
2023-02-28 16:28:48 +08:00
init_database()
app = FastAPI(
title="日报小程序",
description="",
2023-03-22 10:20:16 +08:00
version="v1.0.0",
openapi_url="/daily/openapi.json",
docs_url="/daily/docs"
2023-02-28 16:28:48 +08:00
)
if not os.path.exists('static_data'):
os.mkdir('static_data')
app.mount("/static_data", StaticFiles(directory="static_data"), name="static_data")
app.add_middleware(
CORSMiddleware,
allow_origins=["*"],
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
)
app.include_router(UserRouter.router)
app.include_router(DailyRouter.router)
2023-03-01 16:04:43 +08:00
app.include_router(AuthRouter.router)
2023-03-07 16:42:34 +08:00
app.include_router(FileRouter.router)
2023-04-21 13:49:51 +08:00
app.include_router(ModsRouter.router)
2023-02-28 16:28:48 +08:00
2023-06-28 16:49:21 +08:00
# 中间件
# app.exception_handler(Exception)(exception_handler)
# app.exception_handler(RequestValidationError)(validation_exception_handler)
2023-07-06 00:52:27 +08:00
# daily_notice.init()
2023-06-28 16:49:21 +08:00
2023-06-29 17:24:38 +08:00
uvicorn.run(app=app, host="0.0.0.0", port=8006, log_config=uvicorn_log_config)