[发明专利]一种多版本接口实现方法、系统、装置及可读存储介质在审
申请号: | 202010923086.0 | 申请日: | 2020-09-04 |
公开(公告)号: | CN112130817A | 公开(公告)日: | 2020-12-25 |
发明(设计)人: | 马旭 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
主分类号: | G06F8/20 | 分类号: | G06F8/20;G06F8/71;G06F8/60 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 刘翠香 |
地址: | 215100 江苏省苏州市吴*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 版本 接口 实现 方法 系统 装置 可读 存储 介质 | ||
本申请公开了一种多版本接口实现方法、系统及相关组件,应用于客户端,所述多版本接口实现方法包括:获取服务端公开的接口信息,所述接口信息包括所述服务器的支持版本的数据结构和接口方法;根据所述接口信息与所述客户端的支持版本,确定协商后版本;根据所述协商后版本,建立与所述服务端之间的通信;接口信息通过soap和xml的形式组织封装,并通过wsdl语言发布,其封装程序和解封程序均通过基类与继承确定。本申请基于soap协议对不同版本间差异化数据结构和接口方法进行封装,在众多版本中确定既支持客户端又支持服务端的协商后版本,解决了多版本接口的实现问题,极大减少了开发的工作量,便于部署。
技术领域
本发明涉及软件开发领域,特别涉及一种多版本接口实现方法、系统、装置及可读存储介质。
背景技术
当前,软件开发一般采用快速迭代的方法,随着客户需求的不断更新与变化,软件最终交付版本较最初版本可能已经更新了很多。接口是不同软件系统连接的桥梁,对于某一特定的软件发布版本,其接口是相对稳定的,但随着软件版本的升级,接口也会发生变化,原来的接口不再适用。
开发对接中,如何简化统一不同版本接口,是一个相对困难的问题,传统的方法一般是对于不同接口版本,各开发一套软件,这种实现机制往往会增加开发工作量及软件系统部署对接的难度。
因此,如何提供一种解决上述技术问题的方案是目前本领域技术人员需要解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种多版本接口实现方法、系统、装置及可读存储介质,以解决多版本接口的开发对接中工作量大、部署困难的问题。其具体方案如下:
一种多版本接口实现方法,应用于客户端,所述多版本接口实现方法包括:
获取服务端公开的接口信息,所述接口信息包括所述服务器的支持版本的数据结构和接口方法;
根据所述接口信息与所述客户端的支持版本,确定协商后版本;
根据所述协商后版本,建立与所述服务端之间的通信;
所述接口信息通过soap和xml的形式组织封装,并通过wsdl语言发布,其封装程序和解封程序均通过基类与继承确定。
优选的,所述根据所述接口信息与所述客户端的支持版本,确定协商后版本的过程,具体包括:
将所述接口信息中所述服务端的支持版本,与所述客户端的支持版本比较,确定所述服务端与所述客户端的支持版本集合;
将所述支持版本集合中的最高版本确定为所述协商后版本。
优选的,所述封装程序包括:
以命名空间和名称的形式构造输出元素,同时更新整体命名空间,以使所述输出元素的命名空间加入功能域;
若属性为空或非必须,则返回空元素;
若属性为基本类型,则设置属性值并输出元素;
若属性为数据封装类型,则递归调用所述封装程序。优选的,所述解封程序包括:
依次遍历解封对象的属性列表;
对每个属性列表值,根据其命名空间及xmltag确定完整的属性名;
若所述属性列表值的属性值为列表,则依次遍历该列表并对该列表中每个属性值执行相同的单个属性值操作;
所述单个属性值操作包括:
若该属性值为基本属性,则根据基本属性将字符转换为特定值;
若该属性值为结构属性,则递归调用所述解封程序。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010923086.0/2.html,转载请声明来源钻瓜专利网。