后台计算: timeStamp1544436564nonceStr"4FE35B26E47D0666F15A4F10924AA915"package"prepay_id=wx10180924407742977e1ceaa40822018777"signType"HMAC-SHA256"paySign"05FF63B2CF5F1B79D087AEBD025D9EE14BC8E25B16A5A548DBE6EA61BE240223" 使用签名校验工具(https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=20_1): [图片] paySign结果都一样:05FF63B2CF5F1B79D087AEBD025D9EE14BC8E25B16A5A548DBE6EA61BE240223 哪位大牛可以解决,,,等待ING
服务商模式小程序支付签名失败,请求管理员和大牛解决!!!服务商模式小程序支付签名失败,请求管理员和大牛解决!!! [图片] [图片] 根据服务商模式的小程序支付文档: ①商户server调用支付统一下单: [代码]统一下单成功返回预付单:[代码] order appid"wx11aa86ff470f0e4f" // 服务商的appidmch_id"1518613291"[代码] [代码] // 服务商的mch_idnonce_str"3acnTtQYjSqgbZL8"prepay_id"wx10155845519876977e1ceaa42184415093"result_code"SUCCESS"return_code"SUCCESS"return_msg"OK"sign"5EBF79C3D17140CF4946985C4E1C4A00B9472BB3DE5E30FD3546E0AB216BAA62"sub_appid"wx7ba8336d4ed76238" // 特约商户号小程序的appidsub_mch_id"1520123771" // 特约商户号trade_type"JSAPI" ②商户server调用再次签名: 生成签名PHP代码: $appId = $order['sub_appid']; // 特约商户小程序的appid:wx7ba8336d4ed76238 $nonceStr = $order['nonce_str']; // 随机串 $package = "prepay_id=".$order['prepay_id']; // 数据包 $signType = "MD5"; // 签名方式 $timeStamp = time(); // 时间戳 $key = "XXXXXXXXXXXXXXXXXXXXXXXX"; // 特约商户的密钥key // 第一步:对参数按照key=value的格式,并按照参数名ASCII字典序排序如下: $stringA = "appId=".$appId."&nonceStr=".$nonceStr."&package=".$package."&signType=".$signType."&timeStamp=".$timeStamp; // 第二步:拼接API密钥 $stringSignTemp = $stringA ."&key=".$key; // MD5签名方式 $sign = md5($stringSignTemp); // 字符串所有字符转换为大写 $paySign = strtoupper($sign); 返回 timeStamp1544428725nonceStr"3acnTtQYjSqgbZL8"package"prepay_id=wx10155845519876977e1ceaa42184415093"signType"MD5"paySign"2A6BBEBE8B4DB46A9E6BB52233F77D2D" ③小程序调起支付API: wx.requestPayment({ 'timeStamp': "1544428725", 'nonceStr': "3acnTtQYjSqgbZL8", 'package': "prepay_id=wx10155845519876977e1ceaa42184415093", 'signType': "MD5", 'paySign': "2A6BBEBE8B4DB46A9E6BB52233F77D2D", 'success': function (res) { console.log(res) }, 'fail': function (res) { console.log(res) }, 'complete': function (res) { console.log(res) }, }) 返回 {err_code: 2, err_desc: "支付验证签名失败", errMsg: "requestPayment:fail"} [代码] [代码]
2018-12-10