Magento微信支付接口开发小记
姍姍來遲的Magento微信支付接口插件
半年之前,有朋友網(wǎng)站需要接入微信支付,是Magento站,于是花費了近二周時間,研究微信開發(fā)文檔、示例代碼,并初步制作了個支付模塊,不巧的是,朋友的微信支付接口賬戶沒申請成功,這麻煩了,沒實際賬戶測試,于是去微信開發(fā)平臺準備申請個測試接口賬戶。遺憾的是這微信搞的東西太復(fù)雜,申請個測試賬戶也沒下來,于是就耽擱了。
九月份的時候,上海一客戶的網(wǎng)站購買了我們的支付寶模塊,感覺很是滿意,后來又問是否有微信的支付模塊,客戶的微信支付接口早已申請下來了,于是把之前開發(fā)的微信模塊拿出來測試修改。 遇到了很多意想不到的問題,首先是微信支付分為四種:刷卡支付(線下)、掃碼支付(PC網(wǎng)站)、公眾號支付(微信中打開商戶的H5頁面)、APP支付(移動端支付),客戶需要的微信掃碼支付,而之前開發(fā)的是公眾號支付,于是重新按照新的支付文檔開發(fā)。
微信支付比支付寶復(fù)雜多了,示例代碼也比較反人類。本來簡單的流程,結(jié)果給編寫的異常復(fù)雜,一些另類開發(fā)人員,通常喜歡把簡單東西復(fù)雜化,炫耀技巧。示例代碼中還有幾處明顯的錯誤,很快解決掉了,卻恰恰有一隱藏的bug,搞的magento系統(tǒng)都崩潰了,百思不得其解,只好在可疑代碼中一段一段排查,測試了20多個單,終于抓到了這罪魁禍首!libxml_disable_entity_loader(true); 就是這條代碼,使用完要 libxml_disable_entity_loader(false); 關(guān)掉該選項才行。否則影響Magento XML解析,導(dǎo)致異常。
另外一個問題是,微信掃碼后,不會自動跳轉(zhuǎn)回網(wǎng)站,需要在掃一掃頁面,增加個ajax每隔幾秒鐘循環(huán)檢查支付是否成功,如果成功后,則跳轉(zhuǎn)回網(wǎng)站來顯示支付成功信息給用戶,并清空購物車。順帶一提的是,微信掃碼頁面做的既精簡又美觀大方,是借用騰訊云的支付頁面。最后在Magento中生成合適大小的二維碼也花費了不少時間。
Magento支付方式選擇界面
Magento微信掃碼支付界面
Magento微信支付通知
Magento后臺,微信接口賬戶設(shè)置界面
總結(jié)
以上是生活随笔為你收集整理的Magento微信支付接口开发小记的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 没工作以卡办卡怎么办
- 下一篇: 【转】响应式详解