收藏
回答

webview打开公众号,无法获取授权code

使用wx.request向后端发起请求获取code,报错 "请在微信客户端打开链接",请问如何解决

本人是在微信开发者工具上进行调试的。操作流程->小程序->内嵌公众号


webview页面onload时候调用wx.request请求后端公众号获取code接口

发起的请求如下

https://open.weixin.qq.com/connect/oauth2/authorize?appid=wxb840e998553389f7&redirect_uri=https%3A%2F%2Fwx.yaojy.cn%2Fwxlogin%2Fcallback&response_type=code&scope=snsapi_base&state=STATE#wechat_redirect


被301重定向后url如下

https://open.weixin.qq.com/connect/oauth2/authorize?appid=wxb840e998553389f7&redirect_uri=https%3A%2F%2Fwx.yaojy.cn%2Fwxlogin%2Fcallback&response_type=code&scope=snsapi_base&state=STATE&connect_redirect=1


返回


<!DOCTYPE html>

<html>

    <head>

        <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=0">

    </head>

    <body>

        <script type="text/javascript">

            var ua = navigator.userAgent.toLowerCase();

            var isWeixin = ua.indexOf('micromessenger') != -1;

            var isAndroid = ua.indexOf('android') != -1;

            var isIos = (ua.indexOf('iphone') != -1) || (ua.indexOf('ipad') != -1);

            if (!isWeixin) {

                document.head.innerHTML = 'https://res.wx.qq.com/open/libs/weui/0.4.1/weui.css">';

                document.body.innerHTML = '<div class="weui_msg"><div class="weui_icon_area"><i class="weui_icon_info weui_icon_msg"></i></div><div class="weui_text_area"><h4 class="weui_msg_title">请在微信客户端打开链接</h4></div></div>';

            }

        </script>

    </body>

</html>


最后一次编辑于  2018-07-16
回答关注问题邀请回答
收藏

2 个回答

  • 风
    2018-07-21

    同求,我的网站是搭建在微擎上面的,且网站绑定了公众号。现在要开发小程序,在之前公众号网站后台写了数据返回接口。然后小程序请求后台接口,就出现了你这种情况,返回的是这样:

    "<!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=0"> </head> <body> <script type="text/javascript"> var ua = navigator.userAgent.toLowerCase(); var isWeixin = ua.indexOf('micromessenger') != -1; var isAndroid = ua.indexOf('android') != -1; var isIos = (ua.indexOf('iphone') != -1) || (ua.indexOf('ipad') != -1); if (!isWeixin) { document.head.innerHTML = '<title>抱歉,出错了</title><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=0"><link rel="stylesheet" type="text/css" href="https://res.wx.qq.com/open/libs/weui/0.4.1/weui.css">'; document.body.innerHTML = '<div class="weui_msg"><div class="weui_icon_area"><i class="weui_icon_info weui_icon_msg"></i></div><div class="weui_text_area"><h4 class="weui_msg_title">请在微信客户端打开链接</h4></div></div>'; } </script> </body> </html> "



    请问你解决了吗?

    2018-07-21
    赞同
    回复
  • 李良山
    李良山
    2018-07-16

    不要用 wx.request,直接在 webview 中跳转到公众号授权页


    2018-07-16
    赞同
    回复 4
    • daemon
      daemon
      2018-07-16

      谢谢·我去试试

      2018-07-16
      回复
    • lhy
      lhy
      2018-07-16

      今天webview跳转到公众号授权页有问题,在PC的开发工具一切正常,在手机上"该链接无法访问"

      2018-07-16
      回复
    • daemon
      daemon
      2018-07-16回复lhy

      老铁这么惨.....赶紧投诉

      2018-07-16
      回复
    • lhy
      lhy
      2018-07-16回复daemon

      已经向官方的人反应了,可是还没有理我

      2018-07-16
      回复
登录 后发表内容