System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請涉及接口封裝,例如涉及一種基于云平臺的接口封裝系統及方法。
技術介紹
1、在實現本公開實施例的過程中,發現相關技術中至少存在如下問題:
2、目前上層統一接口平臺應用廣泛,大多數均是通過直接轉調的方式進行轉調和集成,缺少統一管理的步驟。
3、需要說明的是,在上述
技術介紹
部分公開的信息僅用于加強對本申請的背景的理解,因此可以包括不構成對本領域普通技術人員已知的現有技術的信息。
技術實現思路
1、為了對披露的實施例的一些方面有基本的理解,下面給出了簡單的概括。所述概括不是泛泛評述,也不是要確定關鍵/重要組成元素或描繪這些實施例的保護范圍,而是作為后面的詳細說明的序言。
2、本公開實施例提供了一種基于云平臺的接口封裝系統及方法,旨在集成不同類型云的第三方接口,對外提供相同的調用方式,實現不同類型的接口統一鑒權、流控、統計等。
3、在一些實施例中,所述系統包括:
4、數據庫,用于存儲不同來源、不同組件、不同類型接口的接口定義和接口參數,接口定義包括接口基本信息、接口生成rsa2密鑰對和接口標識,使用rsa2非對稱加密方式,對接口信息進行加密處理,生成密鑰對作為接口生成rsa2密鑰對,生成token作為接口標識;
5、redis集群,包括多個redis,每個redis用于緩存一個數據庫內的接口信息,每次接口調用時先查詢redis集群;
6、本地緩存,用于緩存redis數據,根據不同類型的接口調用不同的組裝
7、返回報文處理模塊,根據不同類型的返回報文方式進行統一化處理,實現接口統一化出參格式。
8、進一步的,數據庫中的接口標識和過期時間寫入redis用于接口驗證時使用。
9、進一步的,本地緩存包括token鑒權模塊、接口關系校驗模塊、組裝調用編碼模塊,使用token發起調用時,token鑒權模塊根據token查詢redis,如果redis中存在相應的token,獲取接口標識進行驗證,如果驗證通過則鑒權完成;接口關系校驗模塊配置接口驗證調用鏈,使用排序調用的方式進行不同類的接口驗證信息;驗證通過后,根據接口標識查詢本地緩存,獲取接口的服務端調用方式、url和報文,組裝調用編碼模塊根據不同類型的接口調用不同的組裝方式。
10、進一步的,本地緩存設有兩個map,調用查詢時,先用map2緩存更新的數據,然后將map2中的數據賦值給map1,map1中的數據供調用查詢。
11、進一步的,當接口發生變化或者新增加接口時,首先更新數據庫,通知redis重新讀取數據庫,更新redis內容,最后本地緩存從redis上更新本地緩存內容。
12、進一步的,通過梳理平臺納管接口形成接口文檔,接口文檔包括調用url、調用方式、入參、出參、描述,接口文檔,接口文檔與數據庫進行一致性維護管理。
13、進一步的,本系統實現接口統一測試,通過遍歷redis的方式,編寫自動化測試腳本,遍歷接口和參數,自動化發起輪詢調用。
14、在一些實施例中,所述方法包括:
15、s01、梳理平臺納管接口形成接口文檔;
16、s02、配置接口內容至數據庫,配置接口定義表、接口參數表;
17、s03、研制生成token的工程代碼,實現api以及利用公鑰進行rsa2加密,生成token用于接口調用標識,將標識和過期時間寫入redis,用于接口驗證時使用;
18、s04、使用token發起調用,根據token查詢redis,如果redis中存在相應的token,獲取接口標識進行驗證,如果驗證通過則鑒權完成;
19、s05、配置接口驗證調用鏈,使用排序調用的方式進行不同類的接口驗證信息;
20、s06、根據接口標識查詢本地二級緩存,獲取接口的服務端調用方式、url和報文,根據不同類型的接口調用不同的組裝方式,實現第三方接口調用;
21、s07、返回報文處理,根據不同類型的返回報文方式進行統一化處理,實現接口統一化出參格式。
22、進一步的,平臺啟動時,加載數據庫數據,并將數據寫入redis和本地緩存,當接口信息發生變化時,更新redredis數據,本地監聽redis數據變化更新本地緩存。
23、進一步的,接口文檔包括調用url、調用方式、入參、出參、描述,接口文檔。
24、本公開實施例提供的一種基于云平臺的接口封裝系統及方法,可以實現以下技術效果:
25、本專利通過侵入式封裝接口實現不同來源的接口的統一管理:
26、1、通過數據庫-redis-本地二級緩存。減少接口數據庫查詢次數。
27、2、提供統一鑒權方式,對不同來源的接口進行權限管理。
28、3、通過統一的調用格式進行轉碼調用,實現所有管理接口調用格式的統一管理。
29、4、符合統一管理規則,自動化腳本直接遍歷數據庫數據進行接口測試。
30、5、實現對不同來源組件、不同調用方式的接口進行統一化調用。
31、6、使用redis一級緩存、本地二級緩存的方式減輕數據庫網絡壓力,快速解析接口信息。
32、7、使用redis+rsa2非對稱加密算法,實現接口統一鑒權。
33、以上的總體描述和下文中的描述僅是示例性和解釋性的,不用于限制本申請。
本文檔來自技高網...【技術保護點】
1.一種基于云平臺的接口封裝系統,其特征在于,包括:
2.根據權利要求1所述的基于云平臺的接口封裝系統,其特征在于:數據庫中的接口標識和過期時間寫入Redis用于接口驗證時使用。
3.根據權利要求2所述的基于云平臺的接口封裝系統,其特征在于:本地緩存包括token鑒權模塊、接口關系校驗模塊、組裝調用編碼模塊,使用token發起調用時,token鑒權模塊根據token查詢Redis,如果Redis中存在相應的token,獲取接口標識進行驗證,如果驗證通過則鑒權完成;接口關系校驗模塊配置接口驗證調用鏈,使用排序調用的方式進行不同類的接口驗證信息;驗證通過后,根據接口標識查詢本地緩存,獲取接口的服務端調用方式、url和報文,組裝調用編碼模塊根據不同類型的接口調用不同的組裝方式。
4.根據權利要求1所述的基于云平臺的接口封裝系統,其特征在于:本地緩存設有兩個MAP,調用查詢時,先用MAP2緩存更新的數據,然后將MAP2中的數據賦值給MAP1,MAP1中的數據供調用查詢。
5.根據權利要求1所述的基于云平臺的接口封裝系統,其特征在于:當接口發
6.根據權利要求1所述的基于云平臺的接口封裝系統,其特征在于:通過梳理平臺納管接口形成接口文檔,接口文檔包括調用url、調用方式、入參、出參、描述,接口文檔,接口文檔與數據庫進行一致性維護管理。
7.根據權利要求1所述的基于云平臺的接口封裝系統,其特征在于:本系統實現接口統一測試,通過遍歷redis的方式,編寫自動化測試腳本,遍歷接口和參數,自動化發起輪詢調用。
8.一種基于云平臺的接口封裝方法,其特征在于:包括:
9.根據權利要求8所述的基于云平臺的接口封裝方法,其特征在于:平臺啟動時,加載數據庫數據,并將數據寫入Redis和本地緩存,當接口信息發生變化時,更新redRedis數據,本地監聽Redis數據變化更新本地緩存。
10.根據權利要求8所述的基于云平臺的接口封裝方法,其特征在于:接口文檔包括調用url、調用方式、入參、出參、描述,接口文檔。
...【技術特征摘要】
1.一種基于云平臺的接口封裝系統,其特征在于,包括:
2.根據權利要求1所述的基于云平臺的接口封裝系統,其特征在于:數據庫中的接口標識和過期時間寫入redis用于接口驗證時使用。
3.根據權利要求2所述的基于云平臺的接口封裝系統,其特征在于:本地緩存包括token鑒權模塊、接口關系校驗模塊、組裝調用編碼模塊,使用token發起調用時,token鑒權模塊根據token查詢redis,如果redis中存在相應的token,獲取接口標識進行驗證,如果驗證通過則鑒權完成;接口關系校驗模塊配置接口驗證調用鏈,使用排序調用的方式進行不同類的接口驗證信息;驗證通過后,根據接口標識查詢本地緩存,獲取接口的服務端調用方式、url和報文,組裝調用編碼模塊根據不同類型的接口調用不同的組裝方式。
4.根據權利要求1所述的基于云平臺的接口封裝系統,其特征在于:本地緩存設有兩個map,調用查詢時,先用map2緩存更新的數據,然后將map2中的數據賦值給map1,map1中的數據供調用查詢。
5.根據權利要求1所述的基于云平臺的接口封裝系統,其...
【專利技術屬性】
技術研發人員:劉禹,王則陸,畢茂華,
申請(專利權)人:西安超越申泰信息科技有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。