博客列表 >微信扫码登陆第三方平台(不能关注公众号)

微信扫码登陆第三方平台(不能关注公众号)

陈序员的博客
陈序员的博客原创
2018年11月01日 11:22:522415浏览

1、首页要注册微信开放平台账号,邮箱不能和微信公众平台的一样,地址:https://open.weixin.qq.com

2、添加网站应用信息审核,添加公众号信息审核,获取开放平台的appid和密钥

3、有两种获取登陆二维码的办法,我这里使用js实现办法,因为js实现可以将二维码动态的内嵌在自己的网页中,并且可以更改二维码大小及样式,js链接:<script src="/static/common/js/lazyload.js"></script>

    代码:

    $(document).ready(function()

     {

         var obj = new WxLogin

         ({

             id:"login_container",    //二维码存放区域的id值

             appid: "",

             scope: "snsapi_login",

             redirect_uri:encodeURIComponent('http://自己的域名链接地址'),   //回调链接,需要encode

             state: "123456",   //携带安全口令

             style: "black",    //二维码黑白风格        black 黑色字体  white 白色字体

             href: ""

         });

     });

4、在回调链接中获取code和state验证,验证通过后根据code获取tokende 的值,"https://api.weixin.qq.com/sns/oauth2/access_token?appid=".$this->appid."&secret=".$this->appsecret."&code=".$code."&grant_type=authorization_code"

5、刷新或续期access_token使用,"https://api.weixin.qq.com/sns/oauth2/refresh_token?appid=".$this->appid."&grant_type=refresh_token&refresh_token=".$refresh_token

6、检验授权凭证(access_token)是否有效,"https://api.weixin.qq.com/sns/auth?access_token=".$data['access_token']."&openid=".$data['openid']

7、获取用户信息,"https://api.weixin.qq.com/sns/userinfo?access_token=".$data['access_token']."&openid=".$data['openid']

8,到这步就大功告成了,最后附上curl请求代码

protected function https_request($url, $data = null)

    {

        $curl = curl_init();

        curl_setopt($curl, CURLOPT_URL, $url);

        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);

        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);

        if (!empty($data)){

            curl_setopt($curl, CURLOPT_POST, 1);

            curl_setopt($curl, CURLOPT_POSTFIELDS, $data);

        }

        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);

        $output = curl_exec($curl);

        curl_close($curl);

        return $output;

    }



声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议