微信小程序支付遇到的坑

1,微信公众号支付和微信小程序支付有差异

 微信公众号:可以直接跳转走h5的微信支付

微信小程序:在测试环境、沙箱环境使用微信公众号的跳转支付没有问题,在线上存在支付异常

最后商讨的解决方法

 openid获取的方法------appid----code----apenid,accestoken

通过appenid拿到对应的验签--

{"code":0,"data":{"onlyCardPay":false,"paramStr":"{\"appId\":\"wx42717f54417ecce1\",\"nonceStr\":\"jf3nrssre50imqiw7odgrg37l2xbd0kd\",\"package\":\"prepay_id=wx081219379987660ba709d52d3193336979\",\"paySign\":\"C60C1DB483CD8C9A7DA518C3CE11CAD8\",\"signType\":\"MD5\",\"timeStamp\":\"1546921178\"}","payChannel":"wx_xcx","payOrderId":"281975780250193921","paySuccessUrl":"https://minisite.daojia.com/pt/topic/collage2/index.html?productId=237&orderId=615469211711148832&groupId=154341#/orderdetail","result":true},"message":"成功","success":true} 

 业务线给我们传递OPENID---进入收银台

 去支付——收银台判断当前是微信小程序,跳转业务方提供的原声小程序链接,进行跳转,支付他们去支付

let url = data. paySuccessUrl
let signData = data. paramStr
Window. wx. miniProgram. getEnv( function ( res) {
let sd = encodeURIComponent( signData)
url = `/pages/h5-weapp-pay/h5-weapp-pay?signData= ${ sd } &url= ${ url } `
if ( res. miniprogram) {
if ( signData. length === 0) {
// alert("signData不能为空")
return false
}
Window. wx. miniProgram. navigateTo({
url: url
})
}
})

wx.requestPayment(
{
'timeStamp''',
'nonceStr''',
'package''',
'signType''MD5',
'paySign''',
'success':function(res){
},
'fail':function(res){},
'complete':function(res){
}
})

猜你喜欢

转载自www.cnblogs.com/yayaxuping/p/10241688.html