100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > 微信公众号中调用支付宝手机网站支付

微信公众号中调用支付宝手机网站支付

时间:2020-05-09 09:29:10

相关推荐

微信公众号中调用支付宝手机网站支付

在阿里官网中有解决微信公众号中调用支付宝手机网站支付的方案,就是使用官方提供的ap.js和pay.html,当然,阿里也给了get和post相关的例子:

我们以demo_post.htm为例:

可以看到script中处理了各个参数,但是这种方式后端不能使用平台提供的SDK完成签名,因为SDK签名会生成form表单,因此各个参数需要自己写代码完成拼接和签名。需要注意的是:手动签名极可能出现问题!

推荐使用SDK完成签名(官网上的demo可以原封不动),然后修改demo_post.htm文件可以实现微信公众号中用本地浏览器打开支付宝。

(图片中的alipayForm是个div)

obj.alipay=function(){qmpur.ajax({url:qmpur.Configs.userBasePath+"/common/pay",data: {orderNo: orderNo,payMethod:2,orderType:2,token:qmpur.Configs.token},dataType: 'json',type: 'post',headers: {'Content-Type': 'application/json;charset=utf-8'},success: function(data) {var form = data.requestForm $("#alipayForm").append(form);$("#alipayForm script").remove(); var queryParam = '';Array.prototype.slice.call(document.querySelectorAll("input[type=hidden]")).forEach(function (ele) {queryParam += ele.name + "=" + encodeURIComponent(ele.value) + '&';});var url = document.getElementsByName("punchout_form")[0].action+'&'+queryParam;_AP.pay(url); },error: function(xhr, type, errorThrown) {mui.alert(i18n_com_pay_fail, i18n_com_warn);}});};

公众号其实可以看成是微信的内置浏览器,你可以引导用户选择右上角的选项(三个点),然后选择用本地浏览器打开,注意支付宝回调时授权的问题。

感谢某个路人给我提供思路~

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。