load dotenv everywhere it's needed; postgresql pool pre ping

This commit is contained in:
2026-05-20 02:21:22 +08:00
parent c68d88b8c1
commit d54aeaa61a
7 changed files with 23 additions and 4 deletions
+5 -1
View File
@@ -18,5 +18,9 @@ elif DATABASE_URL and DATABASE_URL.startswith("postgres+"):
if not DATABASE_URL:
raise ValueError("DATABASE_URL environment variable is not set or empty.")
engine = create_engine(DATABASE_URL)
engine = create_engine(
DATABASE_URL,
pool_recycle=3600,
pool_pre_ping=True
)
SessionLocal = sessionmaker(bind=engine)
+2
View File
@@ -3,6 +3,7 @@ from fastapi import FastAPI, Depends, HTTPException
from fastapi.middleware.cors import CORSMiddleware
from strawberry import Schema
from strawberry.fastapi import GraphQLRouter
from dotenv import load_dotenv
from auth import router as auth_router, get_user_by_id, get_current_user
@@ -22,6 +23,7 @@ Base.metadata.create_all(bind=engine)
app = FastAPI()
# 获取环境变量字符串,并转成列表
load_dotenv()
origins_str = os.getenv("CORS_ORIGINS", "http://localhost:3000")
origins = [origin.strip() for origin in origins_str.split(",")]
+3
View File
@@ -1,4 +1,7 @@
import os
from dotenv import load_dotenv
load_dotenv()
OSS_BASE_URL = os.getenv("OSS_BASE_URL", "").rstrip("/")
+3 -2
View File
@@ -1,8 +1,9 @@
import oss2
import httpx
import os
import io
from fastapi import HTTPException
from dotenv import load_dotenv
load_dotenv()
# 加载配置
ACCESS_KEY_ID = os.getenv("S3_ACCESS_KEY_ID")