亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

到處都是坑的微信支付V3

2019-11-17 01:49:31
字體:
來源:轉載
供稿:網友

到處都是坑的微信支付V3

業務需要一個在微信上能付款的功能,于是乎想到了最普遍的支付寶,坑爹的是T與A是水火不容啊,默默的還是接微信支付吧,沒想到從此掉進了連環坑……

網上寫微信支付接口的還是很多,php官方有(鄙視源碼作者,連參數對應都錯了,能跑通才怪),NET版 微信支付--入門篇這篇算是比較全的,java版。

PHP的只能參考,終究還是先按NET版的還創建項目,不過文章里面也沒具體寫到如何前后臺交互(偶用的MVC),對于初次接觸的人來說只能問題來一個解決一個。

至于怎么從0開發就不用詳細說明了,參考這位仁兄的 微信支付--入門篇,微信支付V2版網上也有Demo,但V3與V2相差太大,以此就新版V3 碰到的問題來說明解決方法。

基礎問題先排除:

    1. 確保 商戶功能 審核通過,會有官方郵件
    2. 支付授權目錄(注意看文檔,大小寫關系很大 點擊支付按鈕,提示“access_denied” 網上有很多關于此問題的解決)
    3. 點擊支付按鈕,提示“access_not_allow” 需要將測試人的微信帳號加入白名單
    4. 【在開發調試階段,測試鏈接需要在公眾號內點擊打開 白名單用戶在公眾號內向公眾號發一條消息,消息內容即為測試鏈接,然后點擊打開】文檔中寫得很清楚,但中招的人還是不計其數(偶也中了……)。
    5. 【參數大小寫敏感】md5 運算后,字符串的字符要轉換為大寫,注意是MD5運算模塊。

基本問題排除后,出問題最多的就是 利用JSAPI 支付,提示“該公眾號支付簽名無效,無法發起該筆交易”,此問題搞了2天多,網上到處搜索,不停的對比文檔,無耐欲哭無淚啊,“不要用wifi和用流量才不報錯”的答案都有(沒遇到過)

基于園友提出的另一個問題”測試目錄改為http://mall.xxx.com/后,網頁支付時直接提示get_brand_wcpay_request:fail_invalid appid 。使用了其他的目錄如http://store.xxx.com/也毫無問題。估計微信內部把含mall的支付都給屏蔽了。 “ 此問題還沒親自驗證,不過在微信中還是請不要用關于阿里有關的域名,否則都不知道怎么坑死的。

具體的問題與 坑人的微信新版支付(V3.3.6)中說的一樣,能得到預支付 ID:PRepay_id,但點擊支付就是一直 提示“該公眾號支付簽名無效,無法發起該筆交易”,又不能本地調試,只能發布后寫日志。

根據網上說的調整參數位置、沒辦法又看文檔,那問題出在哪呢?

簽名無效,說明出在第二次簽名,此次要將參數提交給前臺用js來傳給微信來校驗,查看MD5操作,

prepay_id的獲得需傳參:

其中MD5簽名方法

  /// <summary>        /// 創建md5摘要,規則是:按參數名稱a-z排序,遇到空值的參數不參加簽名        /// </summary>        /// <param name="key">參數名</param>        /// <param name="value">參數值</param>        /// key和value通常用于填充最后一組參數        /// <returns></returns>        public virtual string CreateMd5Sign(string key, string value)        {            StringBuilder sb = new StringBuilder();            ArrayList akeys = new ArrayList(Parameters.Keys);            akeys.Sort();            foreach (string k in akeys)            {                string v = (string)Parameters[k];                if (null != v && "".CompareTo(v) != 0                    && "sign".CompareTo(k) != 0 && "key".CompareTo(k) != 0)                {                    sb.Append(k + "=" + v + "&");                }            }            sb.Append(key + "=" + value);                   string sign = MD5Util.GetMD5(sb.ToString(), GetCharset()).ToUpper();            return sign;        }

1.package改為prepay_id=u802345jgfjsdfgsdXXX 的格式(html頁也是此格式)

2.加入signType為MD5加密參數(有人說不加是不對的)

3.兩次MD5加密都要按文檔的方法 key要放在最后再加密

4.MD5加密對大小寫加密的結果是不一樣的,檢查 appId與appid、timeStamp與timestamp加密后是不一樣的,確保HTML與后臺加密的參數一模一樣,是一模一樣哦!?。又锌?,沒想到微信支付竟然對大小寫敏感到如此地步),注意第一次加密參數都是小寫

5.參數個數5個

6.body參數過長

7.加入openid

我們的問題大多出現在4,按上面順序解決后終于看到了支付窗口!?。?!

此文獻給還在深坑中的小伙伴們……

不說了,說多了都是淚……

之前微支付已經集成到項目中一直沒時間抽出,現在需要的留下郵箱,java的單獨說明下,點下推薦。

這里抽出來的是net版本的,主要解決前期頁面支付問題,只是個基本的demo,沒有回調頁面。有園友也提出了demo中的不足,建議先跑通這個demo,然后在此基礎上補充不嚴謹的支付邏輯,畢竟是涉及到money的問題,畢竟也只是個demo,不能不思考就完全照般。

微信現在開放了最新的JS-SDK, 有園友指出現在的demo上用js-sdk會沖突,建議先不用js-sdk,能運行后,可將全部js都照JS-SDK的支付方法更改。微信JS-SDK說明文檔。哥也只能幫你到這了……

=============================================================

爭對于園友新手調通支付后沒有回調頁面問題特此又寫了一篇到處都是坑的微信支付V3之 微信支付回調頁面以供參考(源碼demo中還不包含)。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品久久久久久av福利| 国产精品久久久久久久app| 91国内免费在线视频| 5566日本婷婷色中文字幕97| 乱亲女秽乱长久久久| 欧美激情精品久久久久久久变态| 一本一本久久a久久精品综合小说| 亚洲视频欧美视频| 亚洲天堂开心观看| 成人免费视频a| 国产精品99久久99久久久二8| 亚洲免费高清视频| 久久精品国产一区二区三区| 国产精品海角社区在线观看| 久热精品视频在线观看| 国产精品综合网站| 亚洲欧美日韩爽爽影院| 久久人91精品久久久久久不卡| 欧美夫妻性生活xx| 国产精品久久久久不卡| 国产成人精品视| 亚洲最大的成人网| 国产精品久久久久久久电影| 亚洲一区二区久久久| 一色桃子一区二区| 九九热这里只有在线精品视| 亚洲欧美国产精品久久久久久久| 亚洲精品国产精品乱码不99按摩| 国产精品看片资源| 国产在线观看精品| 亚洲天堂男人天堂女人天堂| 亚洲国产成人久久| 8x拔播拔播x8国产精品| 久久久久女教师免费一区| 亚洲欧美日韩久久久久久| 国产精品嫩草视频| 欧美日韩aaaa| 亚洲午夜av久久乱码| 欧美亚洲激情在线| 成人疯狂猛交xxx| 国产精品稀缺呦系列在线| 国产又爽又黄的激情精品视频| 亚洲色图狂野欧美| 在线中文字幕日韩| 久久影视电视剧凤归四时歌| 国产精品视频专区| 国产一区二区三区中文| 一本一本久久a久久精品综合小说| 欧美成人一区在线| 粉嫩老牛aⅴ一区二区三区| 欧美日韩不卡合集视频| 国产精品88a∨| 91成人在线视频| 欧美成人免费大片| 日本亚洲欧洲色α| 国产精品激情av电影在线观看| 国产欧美日韩精品在线观看| 久久777国产线看观看精品| 夜夜嗨av色综合久久久综合网| 91精品国产综合久久香蕉的用户体验| 伊人亚洲福利一区二区三区| 欧美日韩在线影院| 亚洲精品成人av| 中文字幕亚洲字幕| 久久亚洲精品一区| 色与欲影视天天看综合网| 日韩一级裸体免费视频| 欧美日韩一区二区免费在线观看| 国产精品情侣自拍| 国产精品一二三视频| 亚洲天堂网在线观看| 中文字幕精品在线| 久久久国产一区| 亚洲男人第一av网站| 日韩精品视频在线播放| 91视频国产高清| 亚洲女人天堂网| 在线看片第一页欧美| 欧美久久久精品| 日韩中文字幕av| 亚洲在线观看视频网站| 国产精品爽爽ⅴa在线观看| 亚洲人成在线一二| 色777狠狠综合秋免鲁丝| 亚洲成人黄色在线观看| 91久久中文字幕| 91在线国产电影| 中文字幕亚洲综合| 国内精品视频一区| 91国产精品91| 亚洲欧洲日产国码av系列天堂| 色多多国产成人永久免费网站| 亚洲黄色av网站| 日韩av在线看| 91精品国产高清久久久久久| 国产日韩欧美在线视频观看| 日韩中文理论片| 国产午夜精品免费一区二区三区| 国产中文字幕日韩| 日韩av电影免费观看高清| 91啪国产在线| 久久夜色精品国产亚洲aⅴ| 欧美性xxxx在线播放| 亚洲精品中文字幕有码专区| 国产美女扒开尿口久久久| 中文日韩电影网站| 国产视频自拍一区| 国产精品成人aaaaa网站| 国产亚洲精品久久久久久| 欧美性猛交xxxx黑人| 岛国av一区二区在线在线观看| 少妇高潮 亚洲精品| 97香蕉超级碰碰久久免费的优势| 成人激情免费在线| 精品爽片免费看久久| 日韩av中文字幕在线| 欧美日韩第一页| 日韩成人在线视频观看| 国内精久久久久久久久久人| 91亚洲精华国产精华| 欧美日韩亚洲天堂| 欧美成人自拍视频| 91久久夜色精品国产网站| 日本sm极度另类视频| 久久伊人免费视频| 亚洲欧美另类中文字幕| 欧美一区二粉嫩精品国产一线天| 91精品国产精品| 久久久久成人精品| 欧美视频中文字幕在线| 中文字幕一区电影| 国产欧美精品xxxx另类| 精品网站999www| 亚洲精品xxxx| 欧美老肥婆性猛交视频| 亚洲大尺度美女在线| 国产91成人在在线播放| 中文字幕亚洲欧美日韩高清| 欧美亚洲一级片| 欧美性生交大片免网| 丝袜情趣国产精品| 欧美成aaa人片免费看| 精品色蜜蜜精品视频在线观看| 精品美女久久久久久免费| 亚洲色在线视频| 欧美黑人性生活视频| 日韩精品中文字幕久久臀| 久久精品国产清自在天天线| 成人a在线观看| 国内精品伊人久久| 精品国产一区二区三区久久久| 亚洲一区二区自拍| 91精品国产九九九久久久亚洲| 欧美一级视频在线观看| 成人免费淫片视频软件| 日韩在线欧美在线| 欧美裸体xxxxx| 国产精品亚洲一区二区三区| 91精品国产91久久久久久久久| 精品国偷自产在线视频99| 亚洲国产精品专区久久| 国产成+人+综合+亚洲欧洲| 欧美日韩一区二区免费在线观看| 日韩av中文在线|