feat(projects): 新增FastAPI项目相关源码
This commit is contained in:
29
projects/web-fastapi/http/body.py
Normal file
29
projects/web-fastapi/http/body.py
Normal file
@@ -0,0 +1,29 @@
|
||||
import uvicorn
|
||||
from fastapi import FastAPI
|
||||
from pydantic import BaseModel
|
||||
|
||||
app = FastAPI()
|
||||
|
||||
|
||||
class LoginData(BaseModel):
|
||||
username: str
|
||||
password: str
|
||||
|
||||
|
||||
@app.post("/login")
|
||||
def login(data: LoginData):
|
||||
response = dict(message="Succeed", token="user-token")
|
||||
if data.username == "admin":
|
||||
response["token"] = "superuser-token"
|
||||
elif data.username != "user":
|
||||
invalid = dict(
|
||||
message="Login failed. Invalid credentials",
|
||||
token=None,
|
||||
)
|
||||
response.update(invalid)
|
||||
|
||||
return response
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
uvicorn.run("body:app")
|
||||
Reference in New Issue
Block a user