2017-08-25:
記錄下java集成網(wǎng)頁微信支付和支付寶支付的處理思路和踩過的坑怒坯。
項目架構(gòu)采用前后端分離的方式炫狱,前端采用vue.js,服務(wù)器采用ssm框架剔猿,分別部署在兩個項目中毕荐。由于項目的特殊性,在開發(fā)過程中碰到了很多問題艳馒,在這里做個記錄。
支付寶:
1员寇、手機網(wǎng)頁支付時弄慰,設(shè)置同步通知和異步通知,異步通知不會生效蝶锋。
之前使用APP支付都是通過異步通知來處理業(yè)務(wù)邏輯陆爽,在實現(xiàn)網(wǎng)頁支付時就碰到問題了。剛開始的解決方法是將同步通知返回到前端頁面扳缕,前端頁面拿到支付寶返回的參數(shù)以后慌闭,傳給后臺服務(wù)器,服務(wù)器去查詢支付寶交易狀態(tài)躯舔,再處理業(yè)務(wù)邏輯驴剔。
在對接過程中,經(jīng)常會出現(xiàn)由于網(wǎng)絡(luò)問題導(dǎo)致查詢失敗粥庄。想想這個方法太蠢了丧失,然后換了種實現(xiàn)思路。同步回調(diào)到服務(wù)器端惜互,服務(wù)器接收參數(shù)布讹,查詢支付結(jié)果,再處理業(yè)務(wù)邏輯训堆,處理完以后重定向至前端頁面描验,完美解決。
微信:
1坑鱼、微信使用的是微信外H5網(wǎng)頁支付膘流,有一個地方需要特別注意,在網(wǎng)頁端支付完成以后姑躲,微信不會有任何的同步通知睡扬。業(yè)務(wù)處理還是使用服務(wù)器異步通知。
先記錄這些黍析,后面會繼續(xù)更新卖怜。