本文主要是介绍jsapi微信支付,安卓可以调起支付界面,ios调不起的问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
jsapi微信支付问题
- 支付目录的配置
- 第一种:配置顶级域名
- 第二种:配置分级目录
- 支付呼起
- 解决方案
在对接微信jsapi支付的时候,各种配置已经配置好,但是ios支付的时候会报错,url 未注册的问题。
支付目录的配置
假如我们支付界面是:
http://www.abc.com/page/pay/index
支付目录有两种配置方式:
第一种:配置顶级域名
支付目录需要配置到
http://www.abc.com/
后面的“/”不能少
第二种:配置分级目录
支付目录需要配置到
http://www.abc.com/page/pay/index
这时候,安卓的是可以调起支付的弹窗的,但是ios调不起来,原因是ios需要配置首页地址,这时候,支付目录还需要在增加一个首页的路径,这个首页是指,第一次进入微信前端界面的路径,比如第一次进入首页的地址是
http://www.abc.com/page/home
支付目录就需要再配置一个
http://www.abc.com/page/home
如果是第一种顶级域名配置的话,此配置可以忽略
建议是使用第一种配置方案,配置顶级域名
支付呼起
这时候可以发现一个奇怪的问题,就是安卓系统的,可以呼起支付弹窗,ios却报错了,url未注册。网上搜索说的是,使用uniapp的时候,pushstate路径的时候,并没有设置成功,所以导致问题的发生。
解决方案
uniapp在进行支付界面的时候 ,需要进行一下界面的刷新,这样,ios就可以成功呼起支付弹窗了。
uniapp跳转支付目录的代码
uni.navigateTo({url: '/page/pay/index' ,// #ifdef H5success:(res)=>{if(res.errMsg == 'navigateTo:ok'){//跳转成功后对页面进行刷新window.location.reload (true); }}// #endif
})
这篇关于jsapi微信支付,安卓可以调起支付界面,ios调不起的问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!