巨坑:小程序appId 、时间戳、随机字符串、订单详情扩展字符串 这个4个顺序不能错,必须按照这个顺序签名才对。重点、重点、重点 顺序(appId、timeStamp、nonceStr、package)
小程序微信支付提示验证签名失败,该如何处理?前提:我的微信支付使用的是V2的接口 1. 我的小程序绑定了两个商户,其中一个商户A不用了,另外一个商户B正常使用 2. 我的APP微信支付正常使用,连接的商户B 3. 微信统一下单接口,正常下单,参数如下: param:{ nonce_str=f3a72d3eb44f45d6826bc6a7f5474687, openid=oPSMY0XPhn1DAJkubA3gnIW40YOQ, sign=BBBFAC4462D95998F804A0657093DC41, mch_id=1465558***, body=客户订单支付, notify_url=*******, spbill_create_ip=125.121.43.85, out_trade_no=test20230606191149060-656172, appid=wx1f5*******, total_fee=1, trade_type=JSAPI, sign_type=MD5 } 4. 我给小程序端返回的内容如下: resultMap: { package=prepay_id=wx06191149663964bccc5b6cbe9438250000, paySign=2B637B4F24F7DC013705DCDEE50309BB, appid=wx1f5555bdb*****, signType=MD5, partnerid=1465558***, prepayid=wx06191149663964bccc5b6cbe9438250000, noncestr=b73QK6PhbEdVT8gl, timestamp=1686049909 } 这里要说明的是, 1.sign的校验,我通过官方工具已经测试,没有问题 2.下单的appid和后面生成sign的appId的问题,我已经避免且测试 3.尝试将统一下单和发送给小程序的noncestr保持移植 4.下单的signType和返回给前端的signType保持了一致 现在的情况时,微信小程序的前端可以拉去支付,但是付款,提示验证签名失败
2023-10-30