load dotenv everywhere it's needed; postgresql pool pre ping
This commit is contained in:
@@ -18,5 +18,9 @@ elif DATABASE_URL and DATABASE_URL.startswith("postgres+"):
|
|||||||
if not DATABASE_URL:
|
if not DATABASE_URL:
|
||||||
raise ValueError("DATABASE_URL environment variable is not set or empty.")
|
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)
|
SessionLocal = sessionmaker(bind=engine)
|
||||||
@@ -3,6 +3,7 @@ from fastapi import FastAPI, Depends, HTTPException
|
|||||||
from fastapi.middleware.cors import CORSMiddleware
|
from fastapi.middleware.cors import CORSMiddleware
|
||||||
from strawberry import Schema
|
from strawberry import Schema
|
||||||
from strawberry.fastapi import GraphQLRouter
|
from strawberry.fastapi import GraphQLRouter
|
||||||
|
from dotenv import load_dotenv
|
||||||
|
|
||||||
from auth import router as auth_router, get_user_by_id, get_current_user
|
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()
|
app = FastAPI()
|
||||||
|
|
||||||
# 获取环境变量字符串,并转成列表
|
# 获取环境变量字符串,并转成列表
|
||||||
|
load_dotenv()
|
||||||
origins_str = os.getenv("CORS_ORIGINS", "http://localhost:3000")
|
origins_str = os.getenv("CORS_ORIGINS", "http://localhost:3000")
|
||||||
origins = [origin.strip() for origin in origins_str.split(",")]
|
origins = [origin.strip() for origin in origins_str.split(",")]
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,7 @@
|
|||||||
import os
|
import os
|
||||||
|
from dotenv import load_dotenv
|
||||||
|
|
||||||
|
load_dotenv()
|
||||||
|
|
||||||
OSS_BASE_URL = os.getenv("OSS_BASE_URL", "").rstrip("/")
|
OSS_BASE_URL = os.getenv("OSS_BASE_URL", "").rstrip("/")
|
||||||
|
|
||||||
|
|||||||
+3
-2
@@ -1,8 +1,9 @@
|
|||||||
import oss2
|
import oss2
|
||||||
import httpx
|
import httpx
|
||||||
import os
|
import os
|
||||||
import io
|
from dotenv import load_dotenv
|
||||||
from fastapi import HTTPException
|
|
||||||
|
load_dotenv()
|
||||||
|
|
||||||
# 加载配置
|
# 加载配置
|
||||||
ACCESS_KEY_ID = os.getenv("S3_ACCESS_KEY_ID")
|
ACCESS_KEY_ID = os.getenv("S3_ACCESS_KEY_ID")
|
||||||
|
|||||||
+4
-1
@@ -1,11 +1,14 @@
|
|||||||
from fastapi import Request, HTTPException
|
from fastapi import Request, HTTPException
|
||||||
import os
|
import os
|
||||||
|
from dotenv import load_dotenv
|
||||||
|
|
||||||
from .tokens import decode_token
|
from .tokens import decode_token
|
||||||
|
|
||||||
|
load_dotenv()
|
||||||
|
|
||||||
JWT_SECRET = os.getenv("JWT_SECRET")
|
JWT_SECRET = os.getenv("JWT_SECRET")
|
||||||
JWT_ALGORITHM = os.getenv("JWT_ALGORITHM", "HS256")
|
JWT_ALGORITHM = os.getenv("JWT_ALGORITHM", "HS256")
|
||||||
|
|
||||||
|
|
||||||
def get_current_user(request: Request):
|
def get_current_user(request: Request):
|
||||||
token = request.cookies.get("access_token")
|
token = request.cookies.get("access_token")
|
||||||
|
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import os
|
|||||||
import secrets
|
import secrets
|
||||||
import json
|
import json
|
||||||
from urllib.parse import quote
|
from urllib.parse import quote
|
||||||
|
from dotenv import load_dotenv
|
||||||
|
|
||||||
from auth.deps import get_current_user
|
from auth.deps import get_current_user
|
||||||
from app.db import SessionLocal
|
from app.db import SessionLocal
|
||||||
@@ -16,6 +17,8 @@ from app.utils.format import get_image_url
|
|||||||
|
|
||||||
router = APIRouter()
|
router = APIRouter()
|
||||||
|
|
||||||
|
load_dotenv()
|
||||||
|
|
||||||
GOOGLE_CLIENT_ID = os.getenv("GOOGLE_CLIENT_ID")
|
GOOGLE_CLIENT_ID = os.getenv("GOOGLE_CLIENT_ID")
|
||||||
GOOGLE_CLIENT_SECRET = os.getenv("GOOGLE_CLIENT_SECRET")
|
GOOGLE_CLIENT_SECRET = os.getenv("GOOGLE_CLIENT_SECRET")
|
||||||
GOOGLE_REDIRECT_URI = os.getenv("GOOGLE_REDIRECT_URI")
|
GOOGLE_REDIRECT_URI = os.getenv("GOOGLE_REDIRECT_URI")
|
||||||
|
|||||||
@@ -2,6 +2,9 @@ from datetime import datetime, timedelta, timezone
|
|||||||
import os
|
import os
|
||||||
import jwt
|
import jwt
|
||||||
from fastapi import HTTPException, status
|
from fastapi import HTTPException, status
|
||||||
|
from dotenv import load_dotenv
|
||||||
|
|
||||||
|
load_dotenv()
|
||||||
|
|
||||||
JWT_SECRET = os.getenv("JWT_SECRET")
|
JWT_SECRET = os.getenv("JWT_SECRET")
|
||||||
JWT_ALGORITHM = os.getenv("JWT_ALGORITHM", "HS256")
|
JWT_ALGORITHM = os.getenv("JWT_ALGORITHM", "HS256")
|
||||||
|
|||||||
Reference in New Issue
Block a user