您现在的位置是:网站首页 > 心得笔记
PHP第三方登录SDK——QQ登录
打开QQ互联:https://connect.qq.com/ -》右上角登录-》登录成功后点击头像-》填写信息成为开发者(具体参照QQ互联官方文档)-》成为开发者审核通过后创建网站应用
引入官方sdk
1、到官网下载sdk
官网地址:http://wiki.connect.qq.com/sdk%e4%b8%8b%e8%bd%bd
选择适合自己的应用下载接入,我这里下载的是PHP SDK(sdk只是官方提供的一个接入qq登录的一个示例代码)
2、官方sdk讲解
API文件夹:放置的是接入QQ登录的核心类以及配置文件 最终我们在项目中使用到的也只有这一个文件夹
doc文件夹:会有一些开发帮助文档
example文件夹:包含一些接入QQ互联以后,用API开发的一些功能的示例
install文件夹:是一个帮助我们配置SDK参数的一个小工具,配置完之后,install文件夹就可以删除了
3、在浏览器中访问sdk
点击“设置配置项”,跳转页面:
按照实际需要来选择,比如get_user_info获取用户基本信息。
为什么不建议全选呢?
因为你选择的所有请求权限都会在你授权登录页面右侧显示出来,如果选择太多,会让用户反感透漏那么多个人信息,不好!
如图:
点击配置,sdk的配置就完成了!在comm目录下生成配置文件inc.php(删除sdk包中的install文件夹)
inc.php配置文件内容:
4、SDK解读
结合官方文档http://wiki.connect.qq.com/%e5%bc%80%e5%8f%91%e6%94%bb%e7%95%a5_server-side
SDK核心类和重要方法:
登录授权相关的三个主要类:
Recorder.class.php ——专门用来读取和写入配置 并且这些配置会存放在session中
URL.class.php—— 单纯的基于curl库发送get或post请求的类
Oauth.class.php——授权类 包括拼接各种有特定参数的url,包括请求code AccessToken(前两个类都是为授权类提供服务的 )
API/qqConnectAPI.php是整个sdk的入口文件,所以在开发中只要包含这个文件 就可以对sdk集成
5、请求访问qq登录页面
$oauth = new Oauth(); $oauth->qq_login();
这样打开浏览器,便可以得到qq登录页面
6、请求accesstoken
$oauth = new Oauth(); $oauth->qq_callback();
7、获取openID
关于openID:
qq用户在第三方站点的唯一标识,相当于居民身份证号
同一qq用户在不同站点使用qq登录openID始终一致。这可以用来判断当前登录用户是否是新用户
$oauth = new Oauth(); $openid = $oauth->get_openid();
将获取到的openid和accesstoken存储到cookie或者session中就好了!
8、API调用实例
$qc = new QC($_COOKIE['qq_accesstoken'],$_COOKIE['qq_openid']); $userinfo = $qc->get_user_info();
下一篇:倒计时效果