From 3fe122cb80e778174027933258cf61d927a25142 Mon Sep 17 00:00:00 2001 From: csf123321 Date: Mon, 30 Mar 2026 22:55:14 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=88=90=E7=94=B1=E5=90=8E?= =?UTF-8?q?=E7=AB=AF=E5=A4=84=E7=90=86=E5=89=8D=E7=AB=AF=E7=9A=84=E9=9D=99?= =?UTF-8?q?=E6=80=81=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 3 ++- backend/app/main.py | 11 ++++++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 783ab42..7f7f049 100644 --- a/.gitignore +++ b/.gitignore @@ -191,4 +191,5 @@ cython_debug/ .cursorindexingignore **/data/* -**/docker/* \ No newline at end of file +**/docker/* +backend/app/static/* \ No newline at end of file diff --git a/backend/app/main.py b/backend/app/main.py index 82c1d00..8b9a22f 100644 --- a/backend/app/main.py +++ b/backend/app/main.py @@ -1,9 +1,10 @@ # app/main.py import logging import os +from fastapi.responses import FileResponse import httpx from contextlib import asynccontextmanager -from fastapi import FastAPI +from fastapi import FastAPI, staticfiles from fastapi.middleware.cors import CORSMiddleware from dotenv import load_dotenv @@ -112,6 +113,14 @@ app.add_middleware( # 版本控制 app.include_router(api_router, prefix="/api/v1") +# 把目录改成static对应我们放dist内容的路径就可以 +app.mount("/", staticfiles.StaticFiles(directory="app/static", html=True), name="static") + +# 只需要保留API的优先匹配,catch_all可以简化成这样 +@app.get("/api/{full_path:path}") +async def api_not_found(full_path: str): + return {"detail": "API Not Found"} + # 健康检查 @app.get("/", tags=["健康检查"]) async def root():