作為日常支付業(yè)務(wù),微信的接入逐漸進(jìn)入了大家的視野。今天以PC端接入微信支付的基本流程來說明。
先看圖
這個序例圖比較復(fù)雜,涵蓋了當(dāng)前微信支持的H5,PC掃碼等。其實(shí)都是大同小異。
簡單來說,如下圖
微信里面提到的掃碼支付,就同上。一般來說,掃碼支付是有兩種模式的。一種就是先根據(jù)productid,調(diào)用微信接口,它會返回一個微信的二維碼,當(dāng)用戶掃碼之后,調(diào)用你在微信掃碼支付的回調(diào)地址,再發(fā)起一次統(tǒng)一下單請求。用戶打開微信后支付。這一段,在模式二的情況下省略成一步了。
動手碼代碼:
準(zhǔn)備工作
A 微信SDK調(diào)用封裝,https://github.com/foxinmy/weixin4j(作者是湖南人),整個SDK封裝還不錯。能大大簡化我們?nèi)腴T的開發(fā)。
B 二維碼顯示 用來顯示微信生成的二維碼,https://github.com/Mrironcc/jquery-qrcode-master
1 封裝業(yè)務(wù)參數(shù),生成二維碼
2 微信二維碼
3 調(diào)用jquery的qrcode
對應(yīng)的二維碼
3 回調(diào)的處理
這段邏輯有一個比較重要的簽名驗(yàn)證,實(shí)際就是驗(yàn)證這個回調(diào)請求是不是微信發(fā)起的。如果非篡改,則告訴微信成功。
以上代碼塊,部分可以在https://github.com/foxinmy/weixin4j的項目里面找到。其它,是經(jīng)過整理的。比較適合入門的一篇文章。
本文沒有涉及其它如訂單查詢(這個其實(shí)在掃碼支付的時候,一定會用到的。異步查詢訂單狀態(tài),定位用戶掃碼支付后的頁面),訂單關(guān)閉,退款等輔助流程。
我的微信公眾號,歡迎溝通學(xué)習(xí)。
posted on 2016-07-26 11:59
alexcai 閱讀(1446)
評論(2) 編輯 收藏