初次提交
This commit is contained in:
54
backend/app/core/config.py
Normal file
54
backend/app/core/config.py
Normal file
@@ -0,0 +1,54 @@
|
||||
from pydantic_settings import BaseSettings
|
||||
from typing import List
|
||||
import os
|
||||
|
||||
class Settings(BaseSettings):
|
||||
# 基础配置
|
||||
ENVIRONMENT: str = "development"
|
||||
DEBUG: bool = True
|
||||
|
||||
# 数据库配置
|
||||
DATABASE_URL: str = "mysql+pymysql://mytest_db:mytest_db@101.126.85.76:3306/mytest_db"
|
||||
|
||||
# Redis配置
|
||||
REDIS_URL: str = "redis://localhost:6379"
|
||||
|
||||
# JWT配置
|
||||
JWT_SECRET_KEY: str = "your-super-secret-jwt-key-change-in-production"
|
||||
JWT_ALGORITHM: str = "HS256"
|
||||
JWT_EXPIRE_MINUTES: int = 30
|
||||
JWT_REFRESH_EXPIRE_DAYS: int = 7
|
||||
|
||||
# CORS配置
|
||||
ALLOWED_HOSTS: List[str] = ["*"] # 允许所有域名访问
|
||||
|
||||
# 文件上传配置
|
||||
MAX_FILE_SIZE: int = 10 * 1024 * 1024 # 10MB
|
||||
UPLOAD_DIR: str = "uploads"
|
||||
ALLOWED_EXTENSIONS: List[str] = [
|
||||
# 图片
|
||||
".jpg", ".jpeg", ".png", ".gif", ".bmp", ".webp", ".svg",
|
||||
# 文档
|
||||
".pdf", ".doc", ".docx", ".xls", ".xlsx", ".ppt", ".pptx",
|
||||
".txt", ".rtf", ".csv",
|
||||
# 压缩文件
|
||||
".zip", ".rar", ".7z", ".tar", ".gz",
|
||||
# 音频
|
||||
".mp3", ".wav", ".flac", ".aac", ".ogg",
|
||||
# 视频
|
||||
".mp4", ".avi", ".mkv", ".mov", ".wmv", ".flv",
|
||||
# 代码文件
|
||||
".py", ".js", ".html", ".css", ".json", ".xml", ".yaml", ".yml",
|
||||
".java", ".cpp", ".c", ".h", ".cs", ".php", ".rb", ".go",
|
||||
".sql", ".sh", ".bat", ".ps1", ".md", ".log"
|
||||
]
|
||||
|
||||
# 安全配置
|
||||
BCRYPT_ROUNDS: int = 12
|
||||
|
||||
class Config:
|
||||
env_file = ".env"
|
||||
case_sensitive = True
|
||||
extra = "allow" # 允许额外的环境变量
|
||||
|
||||
settings = Settings()
|
||||
Reference in New Issue
Block a user