本次更新內容如下:
秘鑰管理改造 doc
服務端返回sign
新增SDK返回sign處理
新增沙箱環境
本次更新的重點內容是秘鑰管理,新增了平台方的公私鑰。如此一來,對接開放平台會有兩套公私鑰,一套由開發者生成的,一套由開放平台生成的。其中開發者持有appKey,開發者私鑰、開放平台公鑰。對接過支付寶開放平台的同學應該不會陌生。
新增了開放平台公私鑰后,會對返回的結果進行一次簽名,返回的類似下面格式:
{ "alipay_story_find_response": { "msg": "Success", "code": "10000", "name": "白雪公主", "id": 1, "gmtCreate": 1554193987378 }, "sign": "xxxxx" }
其中sign欄位為服務端生成的簽名串,因此SDK需要驗證簽名合法性。SDK處理方式如下:
String url = "http://open.domian.com/api"; String appId = "2019032617262200001"; /** 開發者私鑰 */ String privateKeyIsv = "開發者私鑰"; /** 開放平台提供的公鑰 */ String publicKeyPlatform = "開放平台提供的公鑰"; OpenClient client = new OpenClient(url, appId, privateKeyIsv, publicKeyPlatform);
在構造函數中追加一個開發平台提供的公鑰,這樣請求后SDK會自動校驗。
本次更新新增了沙箱環境,可提供給開發者進行介面調用,效果圖如下
關於SOP
一個開放平台解決方案項目,基於Spring Cloud實現,目標是能夠讓用戶快速得搭建起自己的開放平台。
SOP提供了兩種介面調用方式,分別是:支付寶開放平台的調用方式和淘寶開放平台的調用方式。 通過簡單的配置后,你的項目就具備了和支付寶開放平台的一樣的介面提供能力。
SOP封裝了開放平台大部分功能包括:簽名驗證、統一異常處理、統一返回內容 、業務參數驗證(JSR-303)、秘鑰管理等,未來還會實現更多功能。
接入方式簡單,與老項目不衝突,老項目註冊到註冊中心,然後在方法上加上註解即可。
架構松耦合,業務代碼實現在各自微服務上,SOP不參與業務實現,這也是Spring Cloud微服務體系帶來的好處。
擴展簡單,開放平台對應的功能各自獨立,可以自定義實現自己的需求,如:更改參數,更改簽名規則等。
有現成的項目,想改造成開放平台供他人調用
有現成的項目,想暴露其中幾個介面並通過開放平台供他人調用
想搭一個開放平台新項目,並結合微服務的方式去維護
對開放平台感興趣的朋友
以上情況都可以考慮使用SOP
[admin
]