From e49b60047248f3391776b6bdee3b9a3aaf2a10e3 Mon Sep 17 00:00:00 2001 From: wwwwwwwww <526125649@qq.com> Date: Wed, 10 Jun 2026 18:37:04 +0800 Subject: [PATCH] 1 --- video-gen-api/app/api/v1/payments.py | 2 +- video-gen-api/app/middleware/request_encrypt.py | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/video-gen-api/app/api/v1/payments.py b/video-gen-api/app/api/v1/payments.py index e6fb4e57..d9ab32cb 100644 --- a/video-gen-api/app/api/v1/payments.py +++ b/video-gen-api/app/api/v1/payments.py @@ -85,7 +85,7 @@ async def wechat_callback(request: Request, db: AsyncSession = Depends(get_db)): return {"code": "SUCCESS", "message": "OK"} -@router.post("/alipay/callback") +@router.get("/alipay/callback") async def alipay_callback(request: Request, db: AsyncSession = Depends(get_db)): form_data = await request.form() data = dict(form_data) diff --git a/video-gen-api/app/middleware/request_encrypt.py b/video-gen-api/app/middleware/request_encrypt.py index 5d5d2651..0d4113ed 100644 --- a/video-gen-api/app/middleware/request_encrypt.py +++ b/video-gen-api/app/middleware/request_encrypt.py @@ -42,6 +42,11 @@ class RequestEncryptMiddleware(BaseHTTPMiddleware): async def dispatch( self, request: Request, call_next: RequestResponseEndpoint ) -> Response: + # 白名单:支付回调接口不需要加密/解密 + path = request.url.path + if "/payments/alipay/callback" in path or "/payments/wechat/callback" in path: + return await call_next(request) + encrypted = request.headers.get("X-Encrypted", "").lower() == "true" if not encrypted: return await call_next(request)