濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > 微信支付--簽名錯(cuò)誤問(wèn)題的解決方法

微信支付--簽名錯(cuò)誤問(wèn)題的解決方法

熱門標(biāo)簽:北京外呼系統(tǒng)咨詢電話 高德地圖標(biāo)注公司位置需要錢嗎 襄陽(yáng)外呼增值業(yè)務(wù)線路解決方案 地圖標(biāo)注資源分享注冊(cè) 慶陽(yáng)外呼系統(tǒng)定制開發(fā) 怎么去掉地圖標(biāo)注文字 海南人工外呼系統(tǒng)哪家好 合肥阿里辦理400電話號(hào) 廊坊地圖標(biāo)注申請(qǐng)入口

最近在做微信支付,調(diào)用微信的統(tǒng)一下單支付接口http://mch.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=9_1時(shí),老是返回“簽名錯(cuò)誤”,偶爾可以成功,不知道是怎么回事。我在日志中打印出生成的字符串和簽名,然后用相同的數(shù)據(jù)在微信支付提供的在線支付調(diào)試工具生成簽名,發(fā)現(xiàn)生成的簽名結(jié)果一樣!生成的最終xml也一樣,但接口就是返回

xml>return_code>![CDATA[FAIL]]>/return_code>
 return_msg>![CDATA[簽名錯(cuò)誤]]>/return_msg>
 /xml>

POST給微信的xml內(nèi)容:

xml>
appid>![CDATA[wxe587fed28211bccb]]>/appid>
body>![CDATA[Demo]]>/body>
device_info>![CDATA[WEB]]>/device_info>
fee_type>![CDATA[CNY]]>/fee_type>
mch_id>![CDATA[1265056801]]>/mch_id>
nonce_str>![CDATA[ejnshgum39igp6qwpvzwb5jbwk8yigqz]]>/nonce_str>
notify_url>![CDATA[http://testpay.le1.com.cn/wechat/notify.htm]]>/notify_url>
openid>![CDATA[opZb3wsfU6RUZGxgFZ6OXVbdVxcU]]>/openid>
out_trade_no>![CDATA[1002_09745565EpuxTunUCD0AA72E]]>/out_trade_no>
product_id>![CDATA[QWE789C1523QWE78]]>/product_id>
sign>![CDATA[BF4BB39FFAFC4DF470C5A3F7784678BD]]>/sign>
spbill_create_ip>![CDATA[172.16.12.171]]>/spbill_create_ip>
total_fee>![CDATA[1]]>/total_fee>
trade_type>![CDATA[NATIVE]]>/trade_type>
/xml>

首先 , 看到返回msg顯示簽名錯(cuò)誤 , 第一反應(yīng)官網(wǎng)提供的路徑去生成了一下簽名做比較 , 結(jié)果發(fā)現(xiàn)簽名算法是沒錯(cuò)的.

     https://pay.weixin.qq.com/wiki/tools/signverify/

找了各種方法 , 百度谷歌搜索了一下午 , 發(fā)現(xiàn)很多同行都遇到了一樣的問(wèn)題 , 得到了以下解決方法

  1、確認(rèn)公眾號(hào)的appSecret和商戶號(hào)的API密鑰沒有搞混。

  2、重置商戶API密鑰。(本人親測(cè)是這樣解決了問(wèn)題,tx真是個(gè)坑,我嚴(yán)重鄙視。)

  3、確認(rèn)公眾號(hào)授權(quán)的域名和目錄是正確的。

  4、參數(shù)body含有中文字符,改換英文簽名成功,那么就轉(zhuǎn)換字符編碼試試。

    $dat = iconv('UTF-8','ISO8859-1',array2xml($package));

然而 , 并沒有解決問(wèn)題 , 先吐槽一下微信支付這個(gè)巨坑 , 不是說(shuō)它的api水平有多爛,但你至少說(shuō)明白一點(diǎn)啊,每次看微信api都頭痛。比阿里差的不是一個(gè)數(shù)量級(jí)的。調(diào)阿里api都是,優(yōu)雅、簡(jiǎn)單、舒服,效率高。調(diào)微信api的感覺是,憤怒、頭痛、惡心,想打人。

后續(xù)問(wèn)題解決后會(huì)在該隨筆追加解決方案 .

追加: 問(wèn)題已解決 , 重置了三次商戶密鑰.(....................)

在解決過(guò)程中又發(fā)現(xiàn)了一個(gè)較大的坑 , 在二維碼支付模式中 , 本來(lái)的設(shè)計(jì)是生成二維碼之后展示到頁(yè)面上讓用戶去長(zhǎng)按識(shí)別來(lái)支付 , 但是今天發(fā)現(xiàn)微信關(guān)閉了這個(gè)功能 , 只能是用另外一臺(tái)手機(jī)去掃碼支付 .

由于用戶體驗(yàn)及其不好 , 后改用公眾號(hào)支付模式 .

總結(jié)

以上所述是小編給大家介紹的微信支付--簽名錯(cuò)誤問(wèn)題的解決方法,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!

您可能感興趣的文章:
  • C# 微信支付 wx.chooseWXPay 簽名錯(cuò)誤的解決方法
  • 使用weixin-java-tools完成微信授權(quán)登錄、微信支付的示例
  • php對(duì)微信支付回調(diào)處理的方法
  • JS實(shí)現(xiàn)仿微信支付彈窗功能
  • php實(shí)現(xiàn)微信支付之企業(yè)付款
  • Android微信支付獲取二次簽名Sign的方法

標(biāo)簽:綿陽(yáng) 鎮(zhèn)江 平頂山 鶴崗 哈密 株洲 商丘 臺(tái)州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《微信支付--簽名錯(cuò)誤問(wèn)題的解決方法》,本文關(guān)鍵詞  微信,支付,簽名,錯(cuò)誤,問(wèn),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《微信支付--簽名錯(cuò)誤問(wèn)題的解決方法》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于微信支付--簽名錯(cuò)誤問(wèn)題的解決方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    盐亭县| 福海县| 云林县| 毕节市| 石城县| 普定县| 休宁县| 屏边| 新化县| 宜章县| 南投县| 长泰县| 澄迈县| 金平| 长垣县| 会理县| 尖扎县| 东台市| 鹤壁市| 鄄城县| 池州市| 抚松县| 金山区| 潮安县| 海阳市| 哈尔滨市| 东乌珠穆沁旗| 桃源县| 慈溪市| 徐水县| 苍梧县| 固阳县| 榆中县| 宣汉县| 喀喇沁旗| 胶州市| 承德市| 翁源县| 荔波县| 庆城县| 沁源县|