python开发接口时,使用jsonschema模块对数据进行校验
2021/5/12 20:28:24
本文主要是介绍python开发接口时,使用jsonschema模块对数据进行校验,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
import jsonschema schema = { "type": "object", # 先声明每个键都是对象 "properties": { # 声明每个键对应的值的类型 "version_no": {"type": "string"}, "versions": { "type": "array", # 如果键对应的值是列表数据类型,则需要声明类型为array,然后再声明列表里面的键对应的值 "minItems": 1, "items": { "type": "object", # 字典对象 "required": ["name", "type"], # 必填字段 "properties": { # 声明键对应的值的类型约束等 "name": { "type": "string", "minLength": 1 }, "type": { "type": "string", "enum": ["python", "java"] }, "size": { "type": "number", }, } } }, }, "required": ["version_no", "versions"] # 最外围的键的约束 } data = { "version_no": "x123", "versions": [ { "name": "jack", "type": "python", "size": 123 }, { "name": "will", "type": "java", } ] } def schema_check(data, schema): try: jsonschema.validate(date, schema) print("data中的数据通过自定义的json schema校验") except jsonschema.exceptions.ValidationError as e; print(e.message, "data数据没有通过schema格式校验") if __name__ == '__main__': schema_check(data, schema)
这篇关于python开发接口时,使用jsonschema模块对数据进行校验的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-30React Native常用组件-点击组件
- 2024-05-30uniapp+vue3+uv-ui手机端后台OA管理模板
- 2024-05-29Python网络爬虫的时候json=就是让你少写个json.dumps()
- 2024-05-27React Native常用组件-展示组件
- 2024-05-27React Native常用组件-列表组件
- 2024-05-09vue3开发前端表单缓存自定义指令,移动端h5必备插件
- 2024-05-09React Hooks在class组件中的使用方式
- 2024-03-30[OIDC in Action] 2. 基于OIDC(OpenID Connect)的SSO(纯JS客户端)
- 2024-03-29terraform jsonencode
- 2024-03-13vuex-persist