欧美成人片一区二区三区,久久碰人妻一区二区三区,久久婷婷激情综合色综合俺也去,狂野欧美性猛交免费视频,久久夜色精品国产亚洲

08
2020/08

Python如何在項(xiàng)目中接入支付寶的資金預(yù)授權(quán),介紹一下接入中遇到的坑

發(fā)布時(shí)間:2020-08-08 16:01:21
發(fā)布者:已經(jīng)寫了
瀏覽量:
0

最近都在使用Python做開發(fā),開展了包括網(wǎng)站,小程序的服務(wù)器,還有一些系統(tǒng)等等,踩了不少坑。今天就來說說使用Python對(duì)接支付寶的流程和對(duì)接時(shí)候遇到的一些讓人比較頭疼的問題

第一步:導(dǎo)入支付寶接口的sdk,有兩種方法可以導(dǎo)入,一種是直接使用Python安裝python-alipay-sdk

1.沒安裝過的直接pip install python-alipay-sdk

2.安裝過的,升級(jí)一下版本 pip install python-alipay-sdk --upgrade

第二種的話直接去支付寶的開放平臺(tái)下載SDK文件,將alipay文件夾所有文件放到項(xiàng)目里,兩種方法都很簡(jiǎn)單

https://opendocs.alipay.com/open/54/103419/

Python環(huán)境的話還需要安裝Crypto的包,直接pip install crypto

第二步:創(chuàng)建應(yīng)用,應(yīng)用需要支付寶后臺(tái)進(jìn)行審核,審核通過后會(huì)分配一個(gè)appid作為一個(gè)唯一標(biāo)志(關(guān)鍵參數(shù))。如果還沒有創(chuàng)建完成應(yīng)用的,可以使用支付寶的沙箱環(huán)境先進(jìn)行測(cè)試開發(fā),可以根據(jù)自身需求,先在沙箱環(huán)境中了解、組合和調(diào)試各種開放接口,進(jìn)行開發(fā)調(diào)通工作

第三步:需要給我們的應(yīng)用設(shè)置秘鑰,秘鑰分為公鑰和私鑰,生成秘鑰需要下載支付寶的支付寶開放平臺(tái)開發(fā)助手來生成,生成之后將公鑰上傳到對(duì)應(yīng)的小程序,私鑰的話自己需要保存好,需要特別說明的是,密鑰長(zhǎng)度選擇RSA2,秘鑰格式選擇PKCS1(非JAVA適用),因?yàn)槌绦蛑耙呀?jīng)生成過了秘鑰,所以就直接拿過來使用了,但是最后發(fā)現(xiàn)一直報(bào)錯(cuò),原因就是秘鑰選錯(cuò)了格式,Python不適用

blob.png

第四步:appid和秘鑰已經(jīng)獲取到之后就可以進(jìn)行代碼的具體操作了,熟悉了之后還是很簡(jiǎn)單的,主要就是幾個(gè)步驟,第一步根據(jù)需要調(diào)用接口去找對(duì)應(yīng)的model,一般文件名跟接口的名稱都是一致的,文件特別多最好是根據(jù)接口的文檔去找文件,在Python環(huán)境下的話一個(gè)接口至少要導(dǎo)入兩個(gè)接口文件model和request,然后就是通用的client文件,一般model文件是用來設(shè)置需要發(fā)送的參數(shù)等信息,request文件是用來發(fā)送請(qǐng)求和設(shè)置請(qǐng)求信息,設(shè)置完成之后用client調(diào)用execute發(fā)送即可得到支付寶返回的信息,返回的信息如果有錯(cuò)的話大部分都是參數(shù)設(shè)置的不對(duì),多調(diào)試幾次基本上就能搞定,最后貼在一張項(xiàng)目示例代碼

blob.png

最后進(jìn)行一波踩坑的總結(jié)吧:

1.如果遇到需要Python安裝crypto包,安裝了之后還是提示Crypto沒有安裝的話,手動(dòng)把包文件的C改成大寫

2.注意秘鑰的格式,Python需要PKCS1(非JAVA適用)格式

3.如果發(fā)現(xiàn)一直報(bào)Appid錯(cuò)誤,但是檢查了之后發(fā)現(xiàn)Appid沒有錯(cuò),檢查接口的請(qǐng)求地址是否填成了測(cè)試地址

4.支付寶請(qǐng)求接口內(nèi)置有兩種請(qǐng)求的方法,execute和sdk_execude需要仔細(xì)閱讀接口文檔選擇對(duì)應(yīng)的請(qǐng)求方式

返回列表