微信非80端口网页授权

Posted lclc

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微信非80端口网页授权相关的知识,希望对你有一定的参考价值。

这里可以算是钻了个空子。
因为我们本身在微信认证的网页授权域名的80端口已经有了一个服务,而且不能变动。
之后需要做一个用户ERP账号和微信openid绑定的接口,就重新做了个一个页面,东西都做好了,但是微信的网页授权调用地址必须是80端口,所以这样一来,端口就被占用了,每次调用微信code就失败,也无法获取其openid和access_token。
想到公众号界面按钮,填写回调域名的时候虽然端口不能指定,但是页面文件可以指定——就在原来的页面上新增了一个“转接页面”:app.aspx,里面重定向到新页面,同时将code参数复制传给新页面,这样一来就实现了非80端口也能调用网页授权。

技术分享图片
因为网页地址对应的就是磁盘文件位置,这里指定非默认首页:app.aspx页面。页面内容是:

<html>
    <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no">

    </head>
    <body style="color:gray;margin:0px;text-align:center;padding-top:20%">
        <script type="text/javascript">
            var url = ‘http://www.测试.net:8092/测试‘;
            <!--这里就将页面重定向到新页面,同时带入原有参数-->
            var search = window.location.search;
            if (search){
                if (url.indexOf("?") != -1){
                    url += "&";
                }else{
                    url += "?";
                }
                url += search.substr(1) + window.location.hash;
            }
            window.location.href= url;
        </script>
    </body>
</html>




以上是关于微信非80端口网页授权的主要内容,如果未能解决你的问题,请参考以下文章

微信开发之网页授权

mac无法使用80端口问题

微信弹出框提醒费标准端口或非微信官方网页解决

如何禁止网页?

PHP微信OAuth2.0网页授权,获取用户信息代码类封装demo

vue实现微信公众号授权登录