验证json请求的flask扩展

flask-json-schema的Python项目详细描述


Flask json模式

这个扩展使得使用jsonschema规范验证发送到Flask应用程序的JSON数据变得很容易

设置

flask json模式在pypi上可用,可以使用

pip install flask-json-schema

扩展可以直接初始化:

fromflaskimportFlaskfromflask_json_schemaimportJsonSchemaapp=Flask(__name__)schema=JsonSchema(app)

或通过工厂方法:

schema=JsonSchema()app=Flask(__name__)schema.init_app(app)

快速示例

fromflask_json_schemaimportJsonSchema,JsonValidationErrorfromflaskimportFlask,jsonify,requestapp=Flask(__name__)schema=JsonSchema(app)todo_schema={'required':['todo'],'properties':{'todo':{'type':'string'},'priority':{'type':'integer'},}}todos=[]@app.errorhandler(JsonValidationError)defvalidation_error(e):returnjsonify({'error':e.message,'errors':[validation_error.messageforvalidation_errorine.errors]})@app.route('/todo',methods=['GET','POST'])@schema.validate(todo_schema)defcreate_message():ifrequest.method=='POST':todos.append(request.get_json())returnjsonify({'success':True,'message':'Created todo'})returnjsonify(todos)app.run('0.0.0.0',5000,debug=True)

有关源代码,请参见example.py

链接

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何在数据库中存储工作日数据以及开始时间和结束时间?   mysql Java JPA内部联接查询不起作用   java MQ消息在不同的客户端应用程序中显示不同   javascript如何在xPage上提高typeAhead性能?   java在尝试保存EditText时无法暂停   mongodb“未能使用带参数的构造函数NO_构造函数实例化java.util.List”,   java如何修改使IllegalArgumentException:列“\u id”不存在的游标   转换Android。网Uri到Java。伊奥。输入流   java NetBeans RCP居中弹出窗口无法按预期工作   java将sql开发人员与netbeans连接起来   带有xmldsig签名的java JAXB编组   java ORACLE JDBC批处理执行不会返回受影响行的实际计数   java无法理解如何在由swagger自动生成的jaxrs服务器中访问请求头   java如何处理漏洞CVE20181258,同时将Spring安全版本5与外部客户端(最新版本)一起使用?   JavaSpring数据JPA存储库多租户单模式技术