flask-Restful 不推荐
fromflask_restfulimportResource,reqparseparser=reqparse.RequestParser()parser.add_argument('username',type=str,required=True,help='Username required')parser.add_argument('age',type=int,required=True,help='Age required')classRegister(Resource):defpost(self):args=parser.parse_args()# 手动校验长度和范围ifnot(3<=len(args['username'])<=20):return{'error':'Username length must be3-20'},400ifnot(0<=args['age']<=150):return{'error':'Age must be0-150'},400# 还要手动集成文档(比如用 flask-swagger),代码分散在多处return{'message':f'Welcome{args["username"]}'}Fast-api 推荐
fromfastapi import FastAPIfrompydanticimportBaseModel,Fieldapp=FastAPI()classUserReg(BaseModel):username:str=Field(...,min_length=3,max_length=20)age:int=Field(...,ge=0,le=150)@app.post('/register')defregister(user:UserReg):return{'message':f'Welcome{user.username}'}