在使用Flask实现Restful接口时,需要对请求参数进行校验以判断其是否符合特定的规则。本文将介绍如何通过
pre-request
库优化校验逻辑。
接口需求
假设我们需要实现一个收集用户填写的个人信息的接口,该接口的具体需求如下:
- 接口路径:
/user/info/new
- 接口字段:
字段 | 类型 | 说明 |
---|---|---|
userName | string | 用户昵称,必填,2-20位字符串 |
gender | int | 用户性别,必填,1-男 2-女 |
age | int | 用户年龄,必填,18-60之间的整数 |
country | string | 用户国籍,选填,默认为 中国 , 字符串长度为>2 |
接口实现
如果不借助任何第三方工具实现上述接口的话,代码可能如下所示:
from flask import request, Flask
app = Flask(__name__)
@app.route("/user/info/new", methods=["POST"])
def user_info_handler():
# 1.判断用户名称参数是否合法
user_name = request.form.get("userName")
if