app跳转小程序支付(支付后跳转小程序

网友投稿 2210 2022-12-29

本篇文章给大家谈谈app跳转小程序支付,以及支付后跳转小程序对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 今天给各位分享app跳转小程序支付的知识,其中也会对支付后跳转小程序进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

app跳转小程序支付次数

App跳转小程序进行支付,支付效果未出现退出小程序。再次跳转进行支付,会出现两个支付弹窗:第一个支付弹窗对应的是第一个,关闭第一个之后出现第二个,第二个才是本次支付信息。如果不关闭第一个进行支付 支付的是第一次跳转的参数。

小程序跳转其他小程序不能支付怎么办

小程序无法付款原因如下:
小程序中支付提示“因微信政策限制,该商品暂不支持在当前环境使用微信支付。
解决小程序跳转其他小程序不能支付的办法:
可复制商品链接至浏览器中完成购买”,说明小程序可能是用H5(网页版)封装的,或者支付页面是调用的H5网页支付。解决办法如下1 您可以选用支付宝进行付款2您可以通过联系方式 联系客服进行付款。

微信小程序支付成功后跳转APP卡死

跳转链接错误。
微信小程序支付成功后跳转APP卡死是因为在程序代码中,跳转链接出现问题,是需要进行重新修改小程序即可。
微信小程序,小程序的一种是一种不需要-安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或搜一下即可打开应用。全面开放申请后,主体类型为企业、政府、媒体、其他组织或个人的开发者,均可申请注册小程序。微信小程序、微信订阅号、微信服务号、微信企业号是并行的体系。

微信小程序怎么内嵌网页实现支付

内嵌网页中可使用jsSDK 1.3.0提供的接口,可坑就来了,居然不支持支付接口的调用,经过一番研究,总算打通了两边的交互。

大概流程

1、先说明涉及到的文件,下面会用到

1.1 app.js:小程序的app.js文件,在globalData里定义一个全局变量paySuccessUrl: '',用来保存支付成功跳转url
1.2 wxminiwebview.js:小程序中放web-view的界面 1.3 wxminipay.js:小程序原生支付界面
1.4 web_pay.vue:内嵌网页会调起支付的路由组件界面,由于我是用vue+vue-router写的,所以你最好了解下vue和vue-router,记得引入微信jssdk1.3.0,最新版本才包含小程序相对应方法。很遗憾,微信并没提供npm包,github有人提供的commonjs引入方式的微信jssdk版本也只有1.2.0,所以就只能这样引入了。

<script src="./static/jweixin-1.3.0.js"script

2、首先我们像官网那样正常嵌入一个内嵌网页,url是wxmini_webview.js中data中定义的变量,webview加载的就是网页就是这个url。

<web-view src="{{url}}"web-view

3、在内嵌网页web_pay.vue里判断当前是否是微信环境。

window.wx.ready(function () {
isWxMini = window.__wxjs_environment === 'miniprogram'
})

4、在内嵌网页web_pay.vue调用支付时把支付金额,支付说明,支付成功跳转url...(任何你想要的参数,记得encodeURIComponent),传给小程序原生页面。

if (isWxMini) {
let jumpUrl = encodeURIComponent(window.location)
let path = `/page/pay/pay?amount=${amount}title=${desc}jumpUrl=${jumpUrl}`
window.wx.miniProgram.navigateTo({
url: path
})
}

5、在小程序支付界面wxmini_pay.js里获取到内嵌网页传过来的值,这里演示方便,实际上是在page的data里存储这些会显示在界面的值好些。

onLoad: function (options) {
console.log(options)
// 获取网页传过来的值
// TODO 用es6解构来获取值TODO
jumpUrl = options.jumpUrl
amount = options.amount
title = options.title
...
},

6、支付成功后,把跳转url附带支付结果及当前时间保存到全局变量。

paySuccess () {
let currentTime = new Date().getTime()
//这是为了防止wxmini_webview.js文件里调用setData由于前后两个url一致导致路由不触发刷新的bug
jumpUrl = options.jumpUrl+encodeURIComponent(`?payResult=1time=${currentTime}`)
//payResult=1表示支付成功,这里我偷懒了直接在url后面补?,实际情况比较复杂
//为了实现支付成功返回后的无刷新加载,这里的参数应该是属于路由web_pay.vue的,而不是属于window.location.search的
//所以要判断路由锚点#的位置和是否已经有路由参数(如果是vue-router的history模式我没用过,应该和window.location一样吧)
getApp().globalData.paySuccessUrl=jumpUrl //保存跳转url到小程序全局变量里
wx.navigateBack() //返回会上个页面,也就是承载网页的容器页面wxmini_pay.js
}

7、回到小程序wxmini_webview.js,会触发onshow,在里面进行界面无刷新加载。

onShow: function () {
console.log('on show')
let paySuccessUrl = getApp().globalData.paySuccessUrl
getApp().globalData.paySuccessUrl="" //清空支付成功url,防止一些操作触发onShow事件
if (paySuccessUrl) {
let url = decodeURIComponent(paySuccessUrl)
this.setData({
//这里在次说明下步骤6中的time=${currentTime},就是因为不加这个当你第一次支付成功回来这里
//这个url跟你第二次支付成功回来这里是一样的,会导致第二次支付开始,这里的setData方法失效
url
})
}
},

8、步骤7中的setData会触发webview中的网页加载,由于我采用的是vue-router,而且前后两个url只有路由的参数query不一样,所以并不会触发界面刷新,也不会触发路由的重新加载,而是只会触发beforeRouteUpdate 这个方法,举个例子,现在支付前界面是https://host/#/pay,然后支付成功后跳转https://host/?payResult=1time=123456#/pay,此时界面不会刷新,pay路由也不会重新加载,而是触发beforeRouteUpdate (to, from, next),你要做的只是在这里界面解析to.query里的数据,然后该干嘛干嘛

beforeRouteUpdate (to, from, next) {
console.log('路由发生改变,很有可能是小程序的支付成功回调')
let payResult = to.query.payResult
if (payResult) { // 小程序支付成功
if (payResult === '1') {
console.log('支付成功,下班打卡走人')
}
}
next()
},

App微信支付 iOS 微信支付 小程序支付 微信公众号支付

最近接到一个项目app跳转小程序支付,需要做App微信支付 iOS 微信支付 小程序支付 微信公众号支付 在这个过程中走了很多弯路。因此记录一下

App微信支付 iOS 微信支付 小程序支付

在app支付中查看 uni-app官网   可以实现  app微信支付   App微信支付 iOS 微信支付 小程序支付

app跳转小程序支付:iOS 微信支付 需要调起上面链接里面的App支付 可以实现 iOS 微信支付app跳转小程序支付,需要在苹果开发账号配置一些东西详细看文档  并且IOS只能打包在手机测试

微信公众号支付

查看文档  https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=7_7index=6   里面有详细的流程app跳转小程序支付app跳转小程序支付我遇到了一些坑  做之前建议小伙伴们把需要的东西提前准备好  

 注: 微信支付需要openid 前端需要拿code去换取后台的openid  获取code的请看问文档 微信开放文档

https://open.weixin.qq.com/connect/oauth2/authorize?appid=wxf0e81c3bee622d60redirect_uri=http%3A%2F%2Fnba.bluewebgame.com%2Foauth_response.phpresponse_type=codescope=snsapi_userinfostate=STATE#wechat_redirect

上面的链接需要填appid  redirect_uri而redirect_uri 需要urlEncode 对链接进行处理 scope的参数snsapi_base不弹出授权 snsapi_userinfo弹出授权 关于app跳转小程序支付和支付后跳转小程序的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。 app跳转小程序支付的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于支付后跳转小程序、app跳转小程序支付的信息别忘了在本站进行查找喔。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:小程序组件 跳转 页面(小程序组件 跳转 页面怎么设置)
下一篇:springboot扫描引入jar包的service等组件方式
相关文章

 发表评论

暂时没有评论,来抢沙发吧~