
- 发布:2025-03-18 19:53
- 更新:2025-03-18 19:53
- 阅读:14
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: Window 10
HBuilderX类型: 正式
HBuilderX版本号: 3.99
手机系统: 全部
手机厂商: 华为
页面类型: vue
vue版本: vue2
打包方式: 离线
项目创建方式: HBuilderX
App下载地址或H5⽹址: https://ios.u-area.com/m/pages/Common/AppDownload
测试过的手机:
示例代码:
let orderInfo = {
appid: res.appId,
noncestr: res.nonceStr,
package: res.package,
partnerid: res.partnerId,
prepayid: res.prepayId,
timestamp: res.timestamp,
sign: res.sign.slice(0,31)
}
console.warn('查看orderInfo',orderInfo)
uni.requestPayment({
provider: 'wxpay',
orderInfo: orderInfo,
success: res1 => {},
fail: res1 => {},
})
let orderInfo = {
appid: res.appId,
noncestr: res.nonceStr,
package: res.package,
partnerid: res.partnerId,
prepayid: res.prepayId,
timestamp: res.timestamp,
sign: res.sign.slice(0,31)
}
console.warn('查看orderInfo',orderInfo)
uni.requestPayment({
provider: 'wxpay',
orderInfo: orderInfo,
success: res1 => {},
fail: res1 => {},
})
操作步骤:
使用后端正常二次加密的32位长度的sign调用uni.requestPayment接口
使用后端正常二次加密的32位长度的sign调用uni.requestPayment接口
预期结果:
能正常拉起微信支付
能正常拉起微信支付
实际结果:
报错:支付验证签名失败
报错:支付验证签名失败
bug描述:
App调用微信支付,使用uni.requestPayment这个api,sign可以任意填写<32位数的字符串,正确的32位签名却显示验签失败,sign可以填写任意的字符,只要不超过31位数即可掉起微信支付,并且sign不能为空,sign的意义不知道是啥
0 个回复