收藏
回答

微信支付小程序下单APIv3无法走完整个流程,支付验证签名失败?

微信支付小程序下单APIv3无法走完整个流程,支付验证签名失败?

已经解决,问题在最下面

PHP开发境界不够高,有做漏或者做错的地方,请各位老板轻锤。

开发环境

1.微信开发者工具 1.02.1910120,2.PHP 7.3,3.Linux云服务器正式环境 https。

支付失败截图

代码1截图,请求小程序下单API,文档链接【https://pay.weixin.qq.com/wiki/doc/apiv3/wxpay/pay/transactions/chapter3_2.shtml

代码2截图 生成签名使用字段appId、timeStamp、nonceStr、package按照 签名生成算法 计算得出的签名值,文档链接【https://pay.weixin.qq.com/wiki/doc/apiv3/wxpay/pay/transactions/chapter3_12.shtml

代码截图 3,签名打印结果

$sign = base64_encode($raw_sign);//长度344,正确长度在1-64位之间

最终结果 ,微信支付成功。

原因简单。

1、调用 wx.requestPayment timeStamp、nonceStr 参数要后端参与签名过程生成的,前端生成的不合法。

2、签名 paySign 的长度限制根本不是 【1-64】,实际长度为 344,具体文档在这里

最后一次编辑于  2021-01-04
回答关注问题邀请回答
收藏

1 个回答

登录 后发表内容
问题标签