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

本文解决在微信环境中跳转至支付宝支付时,因#号后参数被截取导致的问题。通过在URL中添加随机数并调整pay方法,确保参数完整传递,实现稳定跳转。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 在跳转中间页的时候,有点手机微信,#号后面的内容被截取,导致打开浏览器以后无法跳转支付宝页面在这里插入图片描述
    实际到这个页面的时候,下面的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);

加入我的技术群,一起学习

707196135
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值