[发明专利]JSON报文比对方法及系统在审
| 申请号: | 201810646030.8 | 申请日: | 2018-06-21 |
| 公开(公告)号: | CN109032886A | 公开(公告)日: | 2018-12-18 |
| 发明(设计)人: | 时宇翔;虞斌;王海兵 | 申请(专利权)人: | 携程旅游网络技术(上海)有限公司 |
| 主分类号: | G06F11/30 | 分类号: | G06F11/30 |
| 代理公司: | 上海弼兴律师事务所 31283 | 代理人: | 薛琦;张冉 |
| 地址: | 200335*** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 比对 自定义 报文 动态解析 节点路径 扩展性 配置的 调用 检测 灵活 配置 | ||
1.一种JSON报文比对方法,其特征在于,包括以下步骤:
S1、配置需要进行自定义比对的节点路径以及相应的自定义比对逻辑;
S2、在进行JSON报文比对时检测当前比对节点是否存在配置的自定义比对逻辑,若是,则执行步骤S3,若否,则执行步骤S4;
S3、动态解析自定义比对逻辑,并调用自定义比对逻辑对所述当前比对节点进行比对;
S4、按照原始的比对逻辑对所述当前比对节点进行比对。
2.如权利要求1所述的JSON报文比对方法,其特征在于,步骤S2之前包括:
S11、开始比对两个JSON报文;
S12、将字符串形式的JSON报文序列化成JSON类型对象并从根节点开始递归比对。
3.如权利要求2所述的JSON报文比对方法,其特征在于,步骤S2具体包括:
检测当前比对节点到根节点的路径是否包含于配置的自定义比对的节点路径中,若是,则执行步骤S3,若否,则执行步骤S4。
4.如权利要求1所述的JSON报文比对方法,其特征在于,步骤S4具体包括:
S41、判断当前节点是否为JSON类型,若是,则对当前节点的所有孩子节点进行比对,然后返回步骤S2;若否,则执行步骤S42;
S42、判断当前节点是否为数组类型,若是,则对当前数组节点的所有子元素进行比对,然后返回步骤S2;若否,则执行步骤S43;
S43、直接比对节点内容。
5.如权利要求1所述的JSON报文比对方法,其特征在于,步骤S1中配置的节点路径为从JSON报文最外层的根节点到自定义比对的节点的完整路径。
6.一种JSON报文比对系统,其特征在于,包括:
配置模块,用于配置需要进行自定义比对的节点路径以及相应的自定义比对逻辑;
检测模块,用于在进行JSON报文比对时检测当前比对节点是否存在配置的自定义比对逻辑,若是,则调用第一比对模块,若否,则调用第二比对模块;
所述第一比对模块用于动态解析自定义比对逻辑,并调用自定义比对逻辑对所述当前比对节点进行比对;
所述第二比对模块用于按照原始的比对逻辑对所述当前比对节点进行比对。
7.如权利要求6所述的JSON报文比对系统,其特征在于,所述JSON报文比对系统还包括:
报文比对模块,用于开始比对两个JSON报文;
序列化模块,用于将字符串形式的JSON报文序列化成JSON类型对象并从根节点开始递归比对。
8.如权利要求7所述的JSON报文比对系统,其特征在于,所述检测模块用于检测当前比对节点到根节点的路径是否包含于配置的自定义比对的节点路径中,若是,则调用第一比对模块,若否,则调用第二比对模块。
9.如权利要求6所述的JSON报文比对系统,其特征在于,所述第二比对模块包括第一判断单元、第二判断单元以及直接比对单元;
所述第一判断单元,用于判断当前节点是否为JSON类型,若是,则对当前节点的所有孩子节点进行比对,然后调用所述检测模块;若否,则调用所述第二判断单元;
所述第二判断单元,用于判断当前节点是否为数组类型,若是,则对当前数组节点的所有子元素进行比对,然后调用所述检测模块;若否,则调用所述直接比对单元;
所述直接比对单元用于直接比对节点内容。
10.如权利要求6所述的JSON报文比对系统,其特征在于,所述配置模块配置的节点路径为从JSON报文最外层的根节点到自定义比对的节点的完整路径。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于携程旅游网络技术(上海)有限公司,未经携程旅游网络技术(上海)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810646030.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种人员信息控制系统
- 下一篇:一种故障硬盘快速定位方法及系统





