在我的项目文件夹中,我有一个基本index.html文件加上静态文件(js、css)以及我的main.py:
from fastapi.staticfiles import StaticFiles
from fastapi.templating import Jinja2Templates
from fastapi import Request
app = FastAPI()
templates = Jinja2Templates(directory="/")
app.mount("/", StaticFiles(directory="/"))
@app.get("/")
def serve_home(request: Request):
return templates.TemplateResponse("index.html", context= {"request": request})
Run Code Online (Sandbox Code Playgroud)
我怎样才能让fastapi在这里工作?我只想index.html在本地主机上提供我的静态文件。没有staticortemplates文件夹有问题吗?
这是一个简单的静态 FastAPI 应用程序。通过此设置,即使根路径预计返回 a FileResponse,custom.html应用程序仍会返回index.html。如何让根路径工作并渲染custom.html?
from fastapi import FastAPI
from fastapi.staticfiles import StaticFiles
from fastapi.responses import FileResponse
app = FastAPI()
app.mount(
"/",
StaticFiles(directory="static", html=True),
name="static",
)
@app.get("/")
async def index() -> FileResponse:
return FileResponse("custom.html", media_type="html")
Run Code Online (Sandbox Code Playgroud)