微信非80端口网页授权

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

微信非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端口网页授权

上一篇:关于微信手气红包算法的探讨


下一篇:微信小程序 - 上传头像