Felord-Payment-Spring移動(dòng)支付 Spring Boot 組件
前言
大部分的 Java Web 項(xiàng)目都會(huì)使用 Spring,尤其是 Spring Boot。所以筆者在開發(fā)過程中萌生一種直接構(gòu)建于Spring依賴之上的支付開發(fā)包的想法。由于支付寶已經(jīng)提供了SDK,所以只要將其初始化委托給 Spring 即可。剩下的硬骨頭就是微信支付了。
微信支付V3的優(yōu)勢(shì)
筆者最開始實(shí)現(xiàn)微信支付的時(shí)候剛好微信支付V3版本的 API公布了。相比較于 V2版本:
- 遵循統(tǒng)一的 Restful 的設(shè)計(jì)風(fēng)格
- 使用 JSON 作為數(shù)據(jù)交互的格式,不再使用XML
- 使用基于非對(duì)稱密鑰的 SHA256-RSA 的數(shù)字簽名算法,不再使用 MD5 或 HMAC-SHA256
- 不再要求 HTTPS 客戶端證書
- 使用 AES-256-GCM,對(duì)回調(diào)中的關(guān)鍵信息進(jìn)行加密保護(hù)
這種開發(fā)體驗(yàn)要遠(yuǎn)遠(yuǎn)好于之前的 V2,因此選擇了微信支付V3。
目前支持的渠道
- 微信支付V3 全量支持,并支持多租戶以同時(shí)滿足移動(dòng)應(yīng)用App、公眾號(hào)、小程序等支付場(chǎng)景
- 支付寶 集成SDK,作簡(jiǎn)單適配
采用技術(shù)
只依賴了 Spring已有的東西,做到了低依賴。
- Spring
- Jackson
- Ali-pay-sdk
開源協(xié)議
本項(xiàng)目采用Apache2.0開源協(xié)議。
免責(zé)聲明
本項(xiàng)目涉及到資金交易,開發(fā)者需要經(jīng)嚴(yán)格測(cè)試后方能用于生產(chǎn)環(huán)境。
評(píng)論
圖片
表情
