From a19d942bd7918996cd26ab1de1c879efed5262b9 Mon Sep 17 00:00:00 2001 From: Wu Clan Date: Thu, 11 May 2023 15:20:21 +0800 Subject: [PATCH] add the get project config api (#33) * add the get project config api * delete the password values --- backend/app/api/routers.py | 3 ++ backend/app/api/v1/sys_config.py | 51 ++++++++++++++++++++++++++++++++ backend/app/core/conf.py | 2 +- 3 files changed, 55 insertions(+), 1 deletion(-) create mode 100644 backend/app/api/v1/sys_config.py diff --git a/backend/app/api/routers.py b/backend/app/api/routers.py index 3cbdd86..8ec02b7 100644 --- a/backend/app/api/routers.py +++ b/backend/app/api/routers.py @@ -4,9 +4,12 @@ from fastapi import APIRouter from backend.app.api.v1.auth import router as auth_router from backend.app.api.v1.task_demo import router as task_demo_router +from backend.app.api.v1.sys_config import router as sys_config_router v1 = APIRouter(prefix='/v1') v1.include_router(auth_router) v1.include_router(task_demo_router, prefix='/tasks', tags=['任务管理']) + +v1.include_router(sys_config_router, prefix='/configs', tags=['系统配置']) diff --git a/backend/app/api/v1/sys_config.py b/backend/app/api/v1/sys_config.py new file mode 100644 index 0000000..29db6b9 --- /dev/null +++ b/backend/app/api/v1/sys_config.py @@ -0,0 +1,51 @@ +#!/usr/bin/env python3 +# -*- coding: utf-8 -*- +from fastapi import APIRouter + +from backend.app.api.jwt import DependsSuperUser +from backend.app.common.response.response_schema import ResponseModel +from backend.app.core.conf import settings + +router = APIRouter() + + +@router.get('', summary='获取系统配置', dependencies=[DependsSuperUser]) +async def get_sys_config() -> ResponseModel: + return ResponseModel( + data={ + 'title': settings.TITLE, + 'version': settings.VERSION, + 'description': settings.DESCRIPTION, + 'docs_url': settings.DOCS_URL, + 'redocs_url': settings.REDOCS_URL, + 'openapi_url': settings.OPENAPI_URL, + 'environment': settings.ENVIRONMENT, + 'static_files': settings.STATIC_FILES, + 'uvicorn_host': settings.UVICORN_HOST, + 'uvicorn_port': settings.UVICORN_PORT, + 'uvicorn_reload': settings.UVICORN_RELOAD, + 'db_host': settings.DB_HOST, + 'db_port': settings.DB_PORT, + 'db_user': settings.DB_USER, + 'db_database': settings.DB_DATABASE, + 'db_charset': settings.DB_CHARSET, + 'redis_host': settings.REDIS_HOST, + 'redis_port': settings.REDIS_PORT, + 'redis_database': settings.REDIS_DATABASE, + 'redis_timeout': settings.REDIS_TIMEOUT, + 'aps_redis_host': settings.APS_REDIS_HOST, + 'aps_redis_port': settings.APS_REDIS_PORT, + 'aps_redis_database': settings.APS_REDIS_DATABASE, + 'aps_redis_timeout': settings.APS_REDIS_TIMEOUT, + 'aps_coalesce': settings.APS_COALESCE, + 'aps_max_instances': settings.APS_MAX_INSTANCES, + 'aps_misfire_grace_time': settings.APS_MISFIRE_GRACE_TIME, + 'token_algorithm': settings.TOKEN_ALGORITHM, + 'token_expire_minutes': settings.TOKEN_EXPIRE_MINUTES, + 'token_url': settings.TOKEN_URL, + 'log_file_name': settings.LOG_FILE_NAME, + 'middleware_cors': settings.MIDDLEWARE_CORS, + 'middleware_gzip': settings.MIDDLEWARE_GZIP, + 'middleware_access': settings.MIDDLEWARE_ACCESS, + } + ) diff --git a/backend/app/core/conf.py b/backend/app/core/conf.py index 6675ae8..aa8146f 100644 --- a/backend/app/core/conf.py +++ b/backend/app/core/conf.py @@ -71,7 +71,7 @@ class Settings(BaseSettings): # Token TOKEN_ALGORITHM: str = 'HS256' # 算法 TOKEN_EXPIRE_MINUTES: int = 60 * 24 * 1 # token 时效 60 * 24 * 1 = 1 天 - TOKEN_URL: str = '/v1/users/login' + TOKEN_URL: str = '/v1/auth/users/login' # Log LOG_FILE_NAME: str = 'fba.log'