请教支付验证签名失败怎么处理?

微信支付 文章 2020-08-29 20:41 871 0 全屏看文

AI助手支持GPT4.0

请教支付验证签名失败怎么处理?How to deal with payment verification signature failure?

请教支付验证签名失败怎么处理?

问题描述:统一下单之后,生成二次签名,传入 wx.requestPayment拉起支付,扫码提示:支付验证签名失败。

后端java代码:

Long timeStamp = System.currentTimeMillis() / 1000;r.put("timeStamp", timeStamp.toString());r.put("nonceStr",WXPayUtil.generateNonceStr());String prepay_id = result.get("prepay_id");r.put("package","prepay_id="+prepay_id);r.put("signType", WXPayConstants.MD5);r.put("appId",DefaultConsts.WX_APPID);;String sign = WXPayUtil.generateSignature(r,DefaultConsts.WX_KEY);System.out.println("生成的签名paySign : "+ sign);r.put("paySign",sign);return r;


小程序代码:

 wx.requestPayment({    timeStamp: prepay.timeStamp,    nonceStr:  prepay.nonceStr,    package:  prepay.package,    signType: prepay.signType,    paySign: prepay.paySign,    success (res) {       console.log(res)       },    fail (res) {       console.log(res)        }  })


排查过程:

1.参数名称、大小写排查 -- 通过;

2.微信支付接口签名校验工具: 连接商户key之后的字符串与后端比对一致;md5之后的字符串比较:一致。

3.重置key 。

统一下单和二次签名都使用的是md5、两个方法没有数据关联。

请问还有其他需要排查的地方吗?

Problem Description: after a unified order is placed, a secondary signature is generated and passed in wx.requestPayment Pull up payment, scan code prompt: payment verification signature failed. Back end java code: long timestamp= System.currentTimeMillis () / 1000;r.put("timeStamp", timeStamp.toString ());r.put("nonceStr", WXPayUtil.generateNonceStr ());String prepay_ id = result.get ("prepay_ id");r.put("package","prepay_ id="+prepay_ id);r.put("signType", WXPayConstants.MD5 );r.put("appId", DefaultConsts.WX_ APPID);;String sign = WXPayUtil.generateSignature (R, DefaultConsts.WX_ KEY); System.out.println (generated signature: paysign) + sign; r.put ("paysign", sign); return R; applet code: wx.requestPayment ({    timeStamp: prepay.timeStamp ,    nonceStr:  prepay.nonceStr ,    package:  prepay.package ,    signType: prepay.signType ,    paySign: prepay.paySign ,    success (res) {        console.log (res)       },    fail (res) {        console.log (RES)}}) troubleshooting process: 1. Parameter name, case check -- pass; 2. Wechat payment interface signature verification tool: string after connecting merchant key is consistent with backend; string comparison after MD5: consistent. 3. Reset the key. MD5 is used for unified single and secondary signature, and there is no data association between the two methods. Is there anything else that needs to be investigated?

回答:

北望沣渭:

感觉问题出在 timeStamp.toString() 应该用 String.valueOf(timeStamp)

张磊:

补充:统一下单的回调url是一个未配置的地址,同时在本地测试。

和这个有关吗?

奎:
你用的什么支付模式?二次签名的appId是支付小程序的appId


张磊:统一下单用的:JSAPI,appId是小程序的。

-EOF-

AI助手支持GPT4.0


国内超级便宜服务器

摸鱼人热门新闻聚合

钻级赞助商 我要加入

开发者在线工具

第三方支付技术请加QQ群

相关文章
怎么样才能获取云存储的图片的永久地址呢?
小游戏互推跳转的具体接口和功能是哪个?
微信红包封面平台到底是机器人还是人工审核?没文字硬是说你有文字?直接驳回!这操作我看不懂。
普通服务商暂不支持补差吗?
请问大家商户号可以合并吗??
随便看看
企业微信通讯录账号被管理员误/恶意删除,怎么办? 9568
问题? 9048
如何快速搭建抽奖助手小程序(无需代码知识) 6177
许涛 大哥在吗, 要解冻小程序的时候提示信息主体不一致, 能帮忙看下吗? 7472
小程序搜一搜全称搜索不显示 麻烦解决一下!谢谢 6793
我的小程序广告收款主体是个体工商户,每个月邮寄两次发票很是麻烦,我年底的时候打包邮寄一次可以么? 6128
如何解决渲染层网络错误Failed to load media? 17394
小程序找号找回 释放昵称? 3253
我的小程序广告主收入5301,实际进账4406,是怎么回事呀? 3110
删除部分微信用户个人数据的通知,怎么删除? 6381