0
点赞
收藏
分享

微信扫一扫

静态文件:Static Files

眼君 2022-03-11 阅读 46


官方文档地址:https://fastapi.tiangolo.com/zh/tutorial/static-files/

from fastapi import FastAPI
from fastapi.staticfiles import StaticFiles

app = FastAPI()

app.mount("/static", StaticFiles(directory="static"), name="static")

“挂载”意味着在特定路径中添加一个完整的“独立”应用程序,然后处理所有子路径。

第一个“/static”是指此“子应用程序”将“装入”的子路径。因此,任何以“/static”开头的路径都将由它处理。

directory=“static”指的是包含静态文件的目录的名称。

name=“static”为它提供了一个可以由FastAPI在内部使用的名称。

所有这些参数都可以不同于“静态”,根据您自己应用程序的需要和具体细节进行调整。

示例代码

静态文件:Static Files_应用程序

# -*- coding: UTF-8 -*-
from fastapi import FastAPI, Form
from starlette.requests import Request
from starlette.staticfiles import StaticFiles
from starlette.templating import Jinja2Templates

app = FastAPI()
templates = Jinja2Templates(directory="templates")
app.mount('/static', StaticFiles(directory='static'), name='static')


@app.post("/user/")
async def files(
request: Request,
username: str = Form(...),
password: str = Form(...),
):
print('username', username)
print('password', password)
return templates.TemplateResponse(
'index.html',
{
'request': request,
'username': username,
}
)


@app.get("/")
async def main(request: Request):
return templates.TemplateResponse('signin.html', {'request': request})


if __name__ == '__main__':
import uvicorn

uvicorn.run(app, host="127.0.0.1", port=8000)



举报

相关推荐

0 条评论