微信调支付宝支付常见问题

  • 在跳转中间页的时候,有点手机微信,#号后面的内容被截取,导致打开浏览器以后无法跳转支付宝页面微信调支付宝支付常见问题_第1张图片
    实际到这个页面的时候,下面的gotoUrl参数已经没有了

				Array.prototype.slice.call(document.querySelectorAll("input[type=hidden]")).forEach(function (ele) {
					queryParam += '&' + ele.name + "=" + encodeURIComponent(ele.value);
					});
				var gotoUrl = document.querySelector("form").getAttribute('action') + '&' +  queryParam;

解决方案:
修改ap.js 下的b.pay,修改为如下

//只需要关注pay方法里面的,外面该是怎样就是怎样
pay=function(d){
    var c=encodeURIComponent(a.encode(d));
    var url = window.location.protocol + "//" + window.location.host + "/?time=" + new Date() + "#/pay?goto=" + c
    window.location.href = url //由于微信截断#之后内容,加上随机数来解决,
};

2、pay为跳转的中间页面,使用的是vue ,配置为路由地址,根据项目的情况而定

3、一般跳转到第三方,提示参数出现问题,看看form里面action属性,是否带有参数,还是只有 https://openapi.alipay.com/gateway.do
有的会带参数,sign,method,charset等都带上了,区别这里拼接的符号不一样,有参数的拼接&,否者是?
在这里插入图片描述

var gotoUrl = document.querySelector("form").getAttribute('action') + '&' +  queryParam;
					_AP.pay(gotoUrl);

你可能感兴趣的:(VUE,JavaScript)