鍍金池/ 問答/C  Android  物聯(lián)網(wǎng)  HTML/ 微信支付報(bào)錯(cuò)

微信支付報(bào)錯(cuò)

用cordova開發(fā)混合應(yīng)用,在調(diào)用微信支付插件時(shí)一直報(bào)錯(cuò):普通錯(cuò)誤。

在此之前一直已經(jīng)用微信插件做完三方登陸和分享,都是正常的,我也上微信的開放平臺(tái)上核對(duì)了APP的包和簽名是沒有問題的,可支付一直報(bào)這個(gè)錯(cuò),沒有另外的提示,哪位大神幫忙解決一下~?。。。。?!小弟在些謝謝了~?。。。。?!

圖片描述

圖片描述

圖片描述

回答
編輯回答
伐木累

歷經(jīng)三天,終于解決。

分享一下經(jīng)驗(yàn):
用cordova-plugin-wechat插件做微信支付功能,調(diào)用客戶端返回“普通錯(cuò)誤”時(shí),基本的問題出的的可能是:
1、android打包的APK簽名和公眾平臺(tái)填寫的是否一致
2、誤把公眾號(hào)的appId拿來用了(有的人開發(fā)的時(shí)候有同時(shí)申請(qǐng)公眾號(hào))
3、調(diào)用微信里傳的params的數(shù)據(jù)有問題

一、我想你用cordova-plugin-wechat插件時(shí)應(yīng)該不光是做支付可能還有三方登陸和分享,因?yàn)橹Ц兜腻e(cuò)誤提示比較坑,簽名不對(duì)和數(shù)據(jù)不對(duì)都回一個(gè)提示根本無法區(qū)別。你如果三方登陸或分享做成功那,那支付回這個(gè)錯(cuò)90%就是params內(nèi)的數(shù)據(jù)不對(duì)造成的。
二、appId不對(duì)的話一般后臺(tái)在生成預(yù)處理訂單也會(huì)報(bào)錯(cuò),到你這的可能性不大。
三、調(diào)用微信里傳的params的sign是要對(duì)六個(gè)數(shù)據(jù)進(jìn)行加密,而且順序不能錯(cuò),順序不對(duì),加密后返回的SIGN字符串也是不一樣的,他的報(bào)錯(cuò)也是普通錯(cuò)誤。(我就是卡在這個(gè)地方了)

所以,報(bào)“普通錯(cuò)誤”不單單只是簽名問題,后臺(tái)給你回的數(shù)據(jù)如果不對(duì),也會(huì)報(bào)這個(gè)錯(cuò),前期因?yàn)椴檎曳较虿粚?duì),白白浪費(fèi)時(shí)間。(吐槽一下:微信支付的開發(fā)文檔里對(duì)先成預(yù)處理訂單后很多后臺(tái)直接把微信后臺(tái)給的信息里的SIGN直接又給前端或android,在這里要給前端和android的sign是要重新加密的,另外,加密是要有順序的,順序不能錯(cuò),微信,你敢報(bào)錯(cuò)提示再詳細(xì)點(diǎn)嗎?????!?。。。?/p>

2018年5月7日 19:45