Android webview 微信h5支付无法调起?

   最近做一个webview 加载h5商城的需求,感觉太简单了,load一个url就ok了,可是到支付的时候,竟然报商户参数格式不正确,请联系商户,查看文档,原来需要在webview 加载的时候需要加入请求头 Referer。简单,分分钟加上了:如下

  @Override
            public boolean shouldOverrideUrlLoading(WebView view, String url) {
                if (url.startsWith("weixin://wap/pay?")) {
                    Intent intent = new Intent();
                    intent.setAction(Intent.ACTION_VIEW);
                    intent.setData(Uri.parse(url));
                    startActivity(intent);
                } else {
                    //H5微信支付要用
                    Map<String, String> extraHeaders = new HashMap<>();
                    extraHeaders.put("Referer", “微信提交的授权域名”);

                    view.loadUrl(url, extraHeaders);

                }

                return true;
            }

搞完了,满心欢喜的试试吧,出现的竟然是商户参数未配置,请联系商户,纳尼,为何如此,请求头没加上去?抓包,查看了下添加成功了啊,找前端哥们,一块抓包,也抓到了啊,什么情况,最后原来是前端哥们还要做一次泛解析。几分钟的事竟然搞了一天,希望能帮到同样遇到这个坑的同学。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值