400-800-9385
网站建设资讯详细

网站开发之第三方登录

发表日期:2019-06-28 11:41:30   作者来源:方维网络   浏览:2616   标签:网站开发    
随着互联网的不断发展,网上的东西越来越多。而有些平台,为了留住客户,就开发一些
会员系统,通过会员,是不是发放一些福利给客户,从而达到留住客户,让客户更加喜欢
我们的平台的目的。但是随着这些平台越来越多,就造成许许多多账号,可能会让客户产生一种很乱、记不住的感觉。这个就出现了第三方登录。现在,基本上每个人都有QQ、微信,我们只需要记住我们常用的这些,然后我们在我们平台上调用第三方登录接口,就可以实现QQ、微信登录,从而不需要创建那么多账号,省去许多麻烦,现在就给大家介绍一些常用的第三方登录接口。
 

网站登录

 
 
1、QQ登录
     首先,我们需要去QQ开放平台创建应用,然后再回调地址写上我们的网站回调地址,然后提交审核,审核通过后,我们就会获得AppID、AppSecret。从而进行接下来的开发
 
     $Client_id = "261****307";    //appkey
    $Client_secret = "85593e16*********4aee42d7ff774";    //App Sercet
    $Redirect_uri = "http://*********/Weibo/auth"; //回调地址
    //接收code值
    $Code = I('get.code');
    if(!$Code) $this->error("code获取失败!");
    //获取access_token
    $url = "https://graph.qq.com/oauth2.0/token?client_id=$Client_id&client_secret=$Client_secret&grant_type=authorization_code&redirect_uri=$Redirect_uri&code=$Code";
    $info = $this->httpsRequest($url);
    //json转数组
    $info_json = json_decode($info,true);
    
    //获取access_token和openid,用于获取用户信息
    $access_token = $info_json['access_token'];
    $openid = $info_json['openid'];
 
    通过以上,获取access_token和openid,用于获取用户信息
 
    header("Content-type:text/html;charset=utf-8");
    //获取用户信息
    $info_url = "https://graph.qq.com/oauth2.0/token?access_token=$access_token&openid=$openid";
    $ch = curl_init();
    //设置选项,包括URL
    curl_setopt($ch, CURLOPT_URL,$info_url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    //执行并获取HTML文档内容
    $output = curl_exec($ch);
    curl_close($ch);
    //此处可打印用户所有信息
    //var_dump($output);
    $userinfo = json_decode($output,true);
 
    这样我们就获得了用户信息
 
 
    2.微信登录
    同样,我们也需要去微信开发平台去创建应用,获得AppID
     $APPID= C('APPID');//AppID
     $rand_code = 'M'.time().rand('100001','999999');//随机字符串
     //登录后返回的地址
     $REDIRECT_URI = 'http://www.leseulstore.com/Weixin/login_return?rand_code='.$rand_code;
     //微信登录地址,也是二维码地址
     $scope='snsapi_userinfo';//需要授权
     $url='https://open.weixin.qq.com/connect/oauth2/authorize?appid='.$APPID.'&redirect_uri='.urlencode($REDIRECT_URI).'&response_type=code&scope='.$scope.'&state=1#wechat_redirect';//登录验证
    vendor("phpqrcode.phpqrcode");//调用二维码类
    $level = 'L';// 点的大小:1到10,用于手机端4就可以了
    $size = 7;// 下面注释了把二维码图片保存到本地的代码,如果要保存图片,用$fileName替换第二个参数false
    $fileName ='Uploads/qcode/2.png'; // 生成的文件名
     $QRcode = new \QRcode();
    $QRcode->png($url, $fileName, $level, $size);//生成二维码
 
    这样我们就生成二维码,通过微信扫描二位码登录。
 
    以上,就是两个很常用的第三方登录。如果有什么不明白的,可以到第三方平台下载开放接口看一下。下面是向第三方发送请求的方法

网站开发代码

 
如没特殊注明,文章均为方维网络原创,转载请注明来自https://www.szfangwei.cn/news/5113.html