注册 登陆

    2020-08-31 21:47:08PHP实现QQ登录的开原理和实现过程

    您现在的位置是: 首页 >  php >  PHP实现QQ登录的开原理和实现过程

    第三方登录,就是使用大家比较熟悉的比如QQ、微信、微博、支付宝等第三方软件登录自己的网站,这可以免去注册账号、快速留住用户的目的,免去了相对复杂的注册流程。下边就给大家讲一下怎么使用PHP开发QQ登录的功能。

    准备工作:
    1. 腾讯开放平台申请账号

    2. 审核个人开发者


    3.创建个人应用



    当操作好后,会有APP ID和 APP Key
    审核通过获得相关接口:get_user_info

    4.下载QQ互联相关的demo ,我下载的是 PHP SDK v2.2

    将API文件夹拷贝到你的项目里,一般是项目存放第三方类的地方


    打开你拷贝到项目里的API文件夹,有install.thml,可以根据说明,通过表单,生成inc.php文件配置;也可以直接在common下面新建一个inc.php,里面内容大概如下:

    <?php die('forbidden'); ?>
    {"appid":"你的appid","appkey":"你的appkey","callback":"你的网站回调域","scope":"get_user_info"}

    代码操作如下:

    <?php

    namespace wechat\controllers;


    use wechat\common\BaseController;

    class Index {

    //登录方法,qq登陆图标请求的后端方法
    public function actionQqlogin(){     require_once EXTEND_PATH.'/signInWith/API/qqConnectAPI.php';
    $qc = new \QC();
    $qc->qq_login();
    } //这个方法是当你通过QQ登录成功以后想要跳转回来的地址,比如你想登录成功以后跳转到百度,那你把下文的$url改为百度链接即可!
    public function actionCallback() {
        // 这里请根据你的项目开发需求(比如获取登录用户的昵称、头像、年龄等等),进行相关代码的开发,具体数据获取方法,请查阅QQ互联文档

          require_once EXTEND_PATH.'/signInWith/API/qqConnectAPI.php'; //引入QQ互联SDK,这是按照我自己项目的路径引入的。

    $qc = new \QC();
    $access_token = $qc->qq_callback();

    $openid = $qc->get_openid();
    // 获取用户昵称等信息,获取成功继续 /* $user_data_url = "https://graph.qq.com/user/get_user_info?access_token={$access_token}      &oauth_consumer_key=".config('qq_login.appid')."&openid={$openid}&format=json";

    $user_data = file_get_contents($user_data_url);//此为获取到的user信息
    $user_data = json_decode($user_data, true);

            */

    // 判断是否第一次登陆,否,设置登陆信息,跳转登陆成功,可以设置跳转到首页或者之前跳到登陆之前的页面 // 是第一次登陆 ,入库qq等信息,设置登陆信息,跳转登陆成功,可以设置跳转到首页或者之前跳到登陆之前的页面
    }
    }


    至此呢qq登陆整个流程就走完了,简单吧,主要是审核应用获取APP ID和APP Key的时候,有些波折,有些要求需要注意,如果审核不通过,可以开发平台底部找在线客服询问具体原因。

关键字词: PHP实现QQ登录的开原理和实现过程

0