[發明專利]一種多版本接口實現方法、系統、裝置及可讀存儲介質在審
| 申請號: | 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.szxzyx.cn/pat/books/202010923086.0/2.html,轉載請聲明來源鉆瓜專利網。





