摘要:一個(gè)簡(jiǎn)單易用的接口開(kāi)放平臺(tái),平臺(tái)封裝了常用的參數(shù)校驗(yàn)結(jié)果返回等功能,開(kāi)發(fā)者只需實(shí)現(xiàn)業(yè)務(wù)代碼即可。這樣做的好處是接口管理方便了,平臺(tái)管理者只需維護(hù)好接口參數(shù)即可。支持國(guó)際化消息返回。采用形式接入平臺(tái),即需要給接入方提供一個(gè)和。
easyopen
一個(gè)簡(jiǎn)單易用的接口開(kāi)放平臺(tái),平臺(tái)封裝了常用的參數(shù)校驗(yàn)、結(jié)果返回等功能,開(kāi)發(fā)者只需實(shí)現(xiàn)業(yè)務(wù)代碼即可。
easyopen的功能類似于淘寶開(kāi)放平臺(tái),它的所有接口只提供一個(gè)url,通過(guò)參數(shù)來(lái)區(qū)分不同業(yè)務(wù)。這樣做的好處是接口url管理方便了,平臺(tái)管理者只需維護(hù)好接口參數(shù)即可。由于參數(shù)的數(shù)量是可知的,這樣可以在很大程度上進(jìn)行封裝。封裝完后平臺(tái)開(kāi)發(fā)者只需要寫(xiě)業(yè)務(wù)代碼,其它功能可以通過(guò)配置來(lái)完成。
得益于Java的注解功能以及Spring容器對(duì)bean的管理,我們的開(kāi)放接口平臺(tái)就這樣產(chǎn)生了。
功能特點(diǎn)開(kāi)箱即用,寫(xiě)完業(yè)務(wù)代碼直接啟動(dòng)服務(wù)即可使用,無(wú)需其它配置。
參數(shù)自動(dòng)校驗(yàn),支持國(guó)際化參數(shù)校驗(yàn)(JSR-303)。
校驗(yàn)功能和結(jié)果返回功能實(shí)現(xiàn)各自獨(dú)立,方便自定義實(shí)現(xiàn)或擴(kuò)展。
采用注解來(lái)定義接口,維護(hù)簡(jiǎn)單方便。
支持i18n國(guó)際化消息返回。
自動(dòng)生成文檔頁(yè)面,類似swagger。
采用數(shù)字簽名進(jìn)行參數(shù)驗(yàn)證,簽名算法見(jiàn):easyopen簽名算法.txt。
采用appKey-secret形式接入平臺(tái),即需要給接入方提供一個(gè)appKey和secret。
技術(shù)點(diǎn)加密算法(MD5、AES、RSA)
Netty(編解碼、長(zhǎng)連接、斷開(kāi)重連)
多線程(等待喚醒、CountDownLatch)
限流(限流策略、分布式限流)
權(quán)限(RBAC、校驗(yàn))
session(單機(jī)、分布式)
注解(文檔生成)
token(jwt、accessToken)
SDK(Java、C#、JavaScript)
結(jié)構(gòu)圖 文檔頁(yè)面 示例定義接口:
@Api(name = "goods.get") public Goods getGoods(GoodsParam param) { Goods goods = new Goods(); goods.setId(1L); goods.setGoods_name("蘋(píng)果iPhoneX"); goods.setPrice(new BigDecimal(8000)); return goods; }
請(qǐng)求數(shù)據(jù):
{ "name": "goods.get", "version": "", "app_key": "test", "data": "%7B%22goodsPrice%22%3A%22%22%2C%22goods_name%22%3A%22iphoneX%22%7D", "timestamp": "2018-03-22 13:48:58", "format": "json", "sign": "C946ACA5AC95B1790511764A10E675B7" }
返回結(jié)果:
{ "code":"0", "data":{ "goods_name":"蘋(píng)果iPhoneX", "id":1, "price":8000 } }
源碼
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/76634.html
摘要:日前,活字格應(yīng)用生成平臺(tái)發(fā)布版本,首次公開(kāi)插件機(jī)制,強(qiáng)大的擴(kuò)展性和系統(tǒng)集成能力,引起業(yè)內(nèi)矚目。活字格也應(yīng)運(yùn)而生,伴隨強(qiáng)勢(shì)發(fā)布。 日前,活字格Web 應(yīng)用生成平臺(tái)發(fā)布V4.0版本,首次公開(kāi)插件機(jī)制,強(qiáng)大的擴(kuò)展性和系統(tǒng)集成能力,引起業(yè)內(nèi)矚目。 活字格是由西安葡萄城自主研發(fā)的 Web 應(yīng)用生成平臺(tái),提供易用的類Excel可視化設(shè)計(jì)器和靈活的定制能力,幫助使用者以無(wú)代碼或少寫(xiě)代碼的方式,快速自...
摘要:螞蟻區(qū)塊鏈技術(shù)能力的輸出目前主要在兩個(gè)方面,一方面是存證平臺(tái),針對(duì)區(qū)塊鏈的存證場(chǎng)景實(shí)現(xiàn)一個(gè)在性能上的優(yōu)化的區(qū)塊鏈平臺(tái)。聯(lián)盟成員可以申請(qǐng)加入?yún)^(qū)塊鏈,從平臺(tái)獲取身份和認(rèn)證的證書(shū)。 摘要: 以數(shù)字金融新原力(The New Force of Digital Finance)為主題,螞蟻金服ATEC城市峰會(huì)于2019年1月4日在上海如期舉辦。在ATEC區(qū)塊鏈行業(yè)研討會(huì)分論壇上,螞蟻金服區(qū)塊鏈B...
摘要:?jiǎn)柲芊裾勔幌卵咐自剖褂玫倪^(guò)程其實(shí)最初的時(shí)候,迅雷團(tuán)隊(duì)對(duì)是懷有謹(jǐn)慎的態(tài)度的。三調(diào)度算法是迅雷云定制優(yōu)化的。迅雷在使用這方面一直沒(méi)有把數(shù)據(jù)層面交給迅雷云之外的系統(tǒng)。 非商業(yè)轉(zhuǎn)載請(qǐng)注明作譯者、出處,并保留本文的原始鏈接:http://www.ituring.com.cn/article/201256 曾金龍就職于迅雷網(wǎng)絡(luò),是國(guó)內(nèi)覆蓋面最廣的迅雷P2P引擎核心研發(fā)成員。他畢業(yè)于中山大...
閱讀 1021·2021-11-16 11:45
閱讀 2196·2021-10-09 09:44
閱讀 1417·2019-08-30 14:03
閱讀 1220·2019-08-26 18:28
閱讀 3392·2019-08-26 13:50
閱讀 1794·2019-08-23 18:38
閱讀 3507·2019-08-23 18:22
閱讀 3674·2019-08-23 15:27