1.无论是否使用async,FastAPI都会使用异步的方式处理,如果定义了async函数,函数内部使用的是同步的调用(不使用await),函数执行过程变成串行
2.validator 装饰器:可以在post数据时对数据进行校验
from pydantic import BaseModel, validator
class Info(BaseModel):
username: str
age: int
address: str
@validator("username")
def check_name(cls, v):
if len(v).__gt__(15) or len(v).__lt__(3):
raise ValueError('length must be less than 15 and great then 3')
return v
import requests
import json
schema = {'username': 'jack', 'age': 22, 'address': 'china'}
request_body = json.dumps(schema)
result = requests.post('http://127.0.0.1:8000/accounts', request_body)
print(result)
print(result.text)
3.on_event 装饰器
@app.on_event("startup")
@app.on_event("shutdown")