1.问题描述:安卓系统可以正常支付,然而苹果系统怎么支付都不能正常支付,debug显示当前页面url未注册。
原理:单页应用,ios系统获取签名的url是首次进入页面的地址,安卓系统获取的是当前页面的url地址
解决方案:我们要在支付页面获取到url,所以需要在支付的前一个页面跳转的时候加上这个就可以了。
uni.navigateTo({ url: '/pages/order/order' , // #ifdef H5 success:(res)=>{ if(res.errMsg == 'navigateTo:ok'){ window.location.reload ( true ); } } // #endif })
2.如果是url地址中的“?”后面的参数获取不到可加上这一段代码
原理:在浏览器中的url地址中的“?”后边是用来当做参数的
if (location.href.indexOf("?#") < 0) { location.href = location.href.replace("#", "?#"); }