微信支付本身是提供了三大Web開發(fā)語言的SDK下載的,按理說應(yīng)該很Easy怎么會有坑呢?
其實(shí)坑大多出在文檔上,文檔不完善,很多東西都得你去摔一跤才明白,事先絕不告訴你,整個微信的文檔都跟屎一樣
其次是參數(shù)命名,一會兒要用timeStamp一會兒卻又要用timestamp的,命名混亂就算了還非得區(qū)分大小寫,百度一下就知道坑過多少人了
這些都忍了,跌跌撞撞也就過來了。但最近做支付又遇到兩個大坑。經(jīng)過數(shù)小時終于解決,來介紹下經(jīng)驗
JSAPI報簽名錯誤項目其中一個需求是在網(wǎng)頁點(diǎn)擊按鈕調(diào)起支付,這就得用到微信的JSAPI
下載PHP的SDK,直接部署并測試SDK自帶的例程,一切正常
把配置項和支付證書替換成自己公眾號的之后,再測試,報簽名錯誤
我:
然后我到微信支付接口簽名校驗工具,各種測試;到線上各種輸日志還是沒有發(fā)現(xiàn)問題。然后重新檢查配置、證書,再bing、google都找不到問題所在。不知不覺就耗去了幾個小時
最后在Google出來的某看起來很丑的論壇里一篇帖子提到一個解決方案——重置支付密鑰
是的就是那個支付時需要用到的KEY,不是AppID也不是AppSecret
我不抱希望地重置了一下?lián)Q了個密鑰,等待十分鐘后,就沒報簽名錯誤了
然而微信不會讓一切那么順利的,當(dāng)我使用getBrandWCPayRequest要調(diào)起支付時,報fail錯誤
這里要先說到微信的支付授權(quán)目錄,關(guān)于這玩意兒,微信官方給出的描述是:
1、所有使用公眾號支付方式發(fā)起支付請求的鏈接地址,都必須在支付授權(quán)目錄之下;
2、最多設(shè)置3個支付授權(quán)目錄,且域名必須通過ICP備案;
3、頭部要包含http或https,須細(xì)化到二級或三級目錄,以左斜杠“/”結(jié)尾。
當(dāng)時的url大概是
http://www.abc.com/wxpay/index.php/wecaht/pay/123
這樣的,于是我根據(jù)第3條描述,將支付授權(quán)目錄設(shè)定為
http://www.abc.com/wxpay/
好啦這就是二級目錄啦!等待10分鐘后測試,依然fail
后來改為http://www.abc.com/wxpay/index.php/,三級目錄啦。還是fail
經(jīng)過無數(shù)google無果后,破罐子破摔填了個倒數(shù)第二級目錄
http://www.abc.com/wxpay/index.php/wecaht/pay/
嗯是的,就跟你猜到的一樣,成功了……
當(dāng)時我看著手機(jī)里調(diào)起的支付密碼輸入框,滿腦子只有WTF……
本文同時刊登于我的博客 超能小紫,如果喜歡請常來玩哦
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/21689.html
摘要:如今查找結(jié)果有誤,說明繼承鏈?zhǔn)清e誤的,因而極有可能是出錯。真相一切都源于裝飾器語法糖。核心思路就是不要更改被裝飾名稱的引用。 本文首發(fā)于我的博客,轉(zhuǎn)載請注明出處 《神坑》系列將會不定期更新一些可遇而不可求的坑防止他人入坑,也防止自己再次入坑 簡化版問題 現(xiàn)有兩個 View 類: class View(object): def method(self): #...
摘要:這個坑就是要注意回調(diào)結(jié)束要返回成功的響應(yīng)這幾天做微信支付暫時遇到的問題就這么多,只能說注意細(xì)節(jié)吧,爬過的坑記錄下來以后遇到就懂處理了。 前言 其實(shí)任何接口開發(fā)只要按照給出來的接口文檔和例子開發(fā)基本上不會有太大問題的,一些問題都是出在雜七雜八的小細(xì)節(jié)上,現(xiàn)在分享一下微信支付開發(fā)中自己遇到的小細(xì)節(jié)。按照文檔做完開發(fā)前配置,比如JS安全域名配置、網(wǎng)頁授權(quán)域名、公眾號授權(quán)目錄等等... 坑一:...
摘要:原文見我的博客,點(diǎn)擊進(jìn)入使用開發(fā)微信公眾號下站點(diǎn)的填坑之旅本文為我創(chuàng)業(yè)過程中,開發(fā)項目的填坑之旅。作為一個技術(shù)宅男,我的項目是做一個微信公眾號,前后端全部自己搞定,不浪費(fèi)國家一分錢。 原文見我的博客,點(diǎn)擊進(jìn)入使用vue開發(fā)微信公眾號下SPA站點(diǎn)的填坑之旅 本文為我創(chuàng)業(yè)過程中,開發(fā)項目的填坑之旅。作為一個技術(shù)宅男,我的項目是做一個微信公眾號,前后端全部自己搞定,不浪費(fèi)國家一分錢^_^。 ...
摘要:淺析微信支付前篇大綱本文是淺析微信支付系列文章的第一篇,主要會介紹一下為何寫下這個系列以及對于微信支付的一點(diǎn)小經(jīng)驗,與君共勉。下面講一下我是如何去學(xué)習(xí)微信支付的。 淺析微信支付:前篇大綱 本文是【淺析微信支付】系列文章的第一篇,主要會介紹一下為何寫下這個系列以及對于微信支付的一點(diǎn)小經(jīng)驗,與君共勉。 以下會分幾個步驟講一下我學(xué)習(xí)微信支付的過程,也是一部辛酸史,也是希望朋友們不要再次跌進(jìn)...
摘要:微信支付統(tǒng)一下單接口,有一個叫的參數(shù),作用我就照搬官方文檔異步接收微信支付結(jié)果通知的回調(diào)地址,通知必須為外網(wǎng)可訪問的,不能攜帶參數(shù)。 最近在做一個小程序,小程序有涉及到微信支付,說來慚愧,還是第一次自己動手去做微信支付這一塊的實(shí)現(xiàn),所以過程中遇到了很多人都會踩的坑(例如mmp的微信支付各種key各種id要在哪里找,很難找),這次使用django來開發(fā),接口部分用django-rest-...
閱讀 805·2021-11-18 10:02
閱讀 3791·2021-09-02 10:21
閱讀 1817·2021-08-27 16:16
閱讀 2122·2019-08-30 15:56
閱讀 2484·2019-08-29 16:53
閱讀 1424·2019-08-29 11:18
閱讀 3034·2019-08-26 10:33
閱讀 2703·2019-08-23 18:34