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登录的开原理和实现过程
上一篇: 有意思的网站(1)
下一篇: 程序员如何提高自己的逻辑思维能力?