對(duì)于一個(gè)電商網(wǎng)站來(lái)說(shuō),支付寶的接入算是一個(gè)不小的功能,畢竟想要做好一個(gè)整的支付系統(tǒng),當(dāng)面付呀,前端調(diào),原生調(diào)會(huì)設(shè)計(jì)到不同的設(shè)計(jì),還有支付接口設(shè)計(jì),防橫向的越權(quán)等等,這里我目前做一個(gè)當(dāng)面付功能,使用支付寶提供的沙箱賬號(hào).
本文檔邊測(cè)邊寫(xiě),可能會(huì)有一些坑,后續(xù)再跟進(jìn)
1.賬號(hào)登錄,獲取商家,用戶賬號(hào)
登錄支付寶開(kāi)放中心(用自己的淘寶賬號(hào)什么的即可登錄),然后找到沙箱賬號(hào)
拿到賬號(hào)后,備用,下面開(kāi)始搞支付的流程.
2.下載并調(diào)通支付寶當(dāng)面付demo
這里我說(shuō)一下文檔的位置,當(dāng)面付的文檔其實(shí)不是很好找
然后隨便點(diǎn)一個(gè)文檔
這時(shí)候就可以在左邊欄中選中當(dāng)面付
主要看的是快速接入這個(gè)功能,其實(shí)大部分的資質(zhì)申請(qǐng)(應(yīng)用創(chuàng)建,商戶簽約什么的)在沙箱環(huán)境都不用做,本身就已經(jīng)做好了的,我們需要的只是實(shí)現(xiàn)sdk的接入,文檔里面其實(shí)有很多需要注意的點(diǎn)和參數(shù),這里不細(xì)說(shuō),后面實(shí)現(xiàn)的時(shí)候一點(diǎn)點(diǎn)解析.
這里稍微說(shuō)一下,當(dāng)面付是有一個(gè)異步的回調(diào)的,跳轉(zhuǎn)處理結(jié)果的url,這里為了能讓支付寶成功調(diào)用到我們的接口,使用了下三方的內(nèi)網(wǎng)穿透工具,我后面使用的是natapp(花生殼亦可),到時(shí)候會(huì)貼出使用的流程
這里去找實(shí)現(xiàn)的demo
第四步有詳細(xì)的服務(wù)端SDK,需要的可以自己去看
這里我們直接把demo下載下來(lái),2018年04月19日14:45:28下載下來(lái)的demo如下圖所示
這是一個(gè)eclipse的項(xiàng)目,我們使用idea打開(kāi)的話需要做一些相關(guān)的配置.
打開(kāi)的時(shí)候會(huì)彈這種框,這是因?yàn)闆](méi)有指定jdk的緣故,無(wú)礙.
上圖中,main函數(shù)一堆報(bào)錯(cuò),慢慢調(diào).
上圖選到你安裝的jdk
上圖中,先刪除所有的jar,然后重新把jar包安裝一下,apply,保證主函數(shù)不報(bào)錯(cuò),注意,source.jar就不需要裝進(jìn)來(lái)
如果彈出無(wú)效的java源:1.8 那就選擇你安裝的java環(huán)境
這時(shí)候啟動(dòng)main函數(shù),發(fā)現(xiàn)報(bào)錯(cuò):
這應(yīng)該是配置文件沒(méi)有去配的緣故,這時(shí)候就開(kāi)始漫漫配置的路了,重新接上文,登錄支付寶沙箱應(yīng)用.
3.配置文件
1.open_api_domain:
2.mcloud_api_domain不用修改(暫時(shí)不知道是什么東西)
3.pid
4.appid
5.RSA公私鑰
下載支付寶的RSA工具
公私鑰填到參數(shù)中,我們還需要做一步,就是上傳公鑰
6.支付寶公鑰alipay_public_key
上傳應(yīng)用公鑰,支付寶會(huì)幫我們生成支付寶公鑰,直接查看復(fù)制即可(注意是SHA256withRsa對(duì)應(yīng)支付寶公鑰)
7.其他參數(shù)
選擇默認(rèn)即可
4.運(yùn)行
配置完成后運(yùn)行一下主函數(shù):
將返回的json字符串格式化一下:
完美!看到那個(gè)qr_code沒(méi)有,那個(gè)就是二維碼圖片,我們找個(gè)二維碼生成器,草料也可,我這里用直接自帶的fe助手生成
然后我們需要下載一個(gè)沙箱錢(qián)包,但是支付寶到現(xiàn)在只提供安卓版的沙箱錢(qián)包,這一步卡了我很久!
這個(gè)安卓的應(yīng)用下載遇到困難了囧 暫時(shí)沒(méi)有能用的安卓機(jī) 等等我再想想辦法
2018年04月20日14:21:11最后嘗試一下讓遠(yuǎn)程的童鞋去下載一下,結(jié)果是可以的,說(shuō)明demo已經(jīng)調(diào)通,接下來(lái)只剩接入了