/
商戶平臺: 商戶平臺
/index.php/core/home/login
開發手冊 api 是:?
/wiki/doc/api/index.html
/wiki/doc/api/wxa/wxa_api.php?chapter=9_1
生成XML的測試接口: 測試接口
/wiki/tools/signverify/
32位隨機碼生成器
1 配置參數, 壹個都不能少(這些都是必填的,還有其他選填的參數,也可以隨心情填寫)
appid 此小程序的唯壹標識 例如:wxed9dxxx6d6cxxx9e
body 可以寫商品描述 例如:我是商品描述,用戶買了兩個饅頭
mch_id 商戶id 需在 商戶平臺 ?查看(申請商戶平臺成功就會得到) 如: 149411***2
nonce_str 隨機字符串(別帶小數點(沒考證 感覺)) 例如:76521019851170500000
notify_url 成功後的通知地址 例如:/pay/unifiedorder 接口
如果正確 會成功得到 xml格式的?prepay_id ,如果簽名錯誤進行下面的錯誤查找。
~~:進行錯誤查找? 可以拿出參數在? 測試接口 ?進行測試 ,無異常可以正常生成 xml之後,如果還報錯。
試著 更改 商戶平臺的秘鑰 (詳細請看第 3 步)。貌似很多人都踩這個雷了? ...
<code>
// 字典排序 key1=xxx&key2=zzz 拼接成字符串
function joinToStr(_obj) {
let keyArr = [];
for (let key in _obj) {
keyArr.push(key);
}
keyArr = keyArr.sort();
console.log("keyArrSort--->", keyArr);
// paySign = MD5(appId=wxd678efh567hg6787&nonceStr=5K8264ILTKCH16CQ2502SI8ZNMTM67VS&package=prepay_id=wx2017033010242291fcfe0db70013231072&signType=MD5&timeStamp=1490840662&key=qazwsxedcrfvtgbyhnujmikolp111111) = 22D9B4E54AB1950F51E0649E8810ACD6
// _str 是 paySign 中MD5 包裹的字符串部分
let _str = "";
let len = keyArr.length;
for (let i = 0; i < len; i++) {
if (i == len - 1) {
_str += (keyArr[i] + "=" + _obj[keyArr[i]]);
} else {
_str += (keyArr[i] + "=" + _obj[keyArr[i]] + "&");
}
}
return _str;
}
</code>