接口开发中jsonschema的使用
Posted PLAY_JOY
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了接口开发中jsonschema的使用相关的知识,希望对你有一定的参考价值。
1.导入模块
import jsonschema from jsonschema import schemas,validators from jsonschema.validators import Draft4Validator
2.自定义参数校验规则
schema = { ‘description‘: ‘对请求json数据参数进行校验‘, ‘type‘: ‘object‘, ‘properties‘: { ‘sender‘: { ‘type‘: ‘string‘, }, ‘msgtype‘: { ‘type‘: ‘string‘ }, ‘receiver‘: { ‘type‘: ‘string‘ }, ‘msg‘: { ‘type‘: ‘object‘, ‘content‘: {‘type‘: ‘string‘}, ‘required‘: [‘type‘, ‘content‘] } }, ‘required‘: [‘sender‘, ‘receiver‘, ‘msg‘] }
3.具体使用
class Validator(object): def __init__(self, name): self.schema = name checker = jsonschema.FormatChecker() self.validator = validators.Draft4Validator(self.schema,format_checker=checker) def validate(self,data): try: self.validator.validate(data) return True except jsonschema.ValidationError as ex: raise Exception(ex.message) return False verifi_obj = Validator(schema) # 可以单独写个py文件,data 为要验证的数据,调用validate方法
以上是关于接口开发中jsonschema的使用的主要内容,如果未能解决你的问题,请参考以下文章
python接口自动化34-json校验神器jsonschema