php接入QQ登录
前言
腾讯提供的接口文档已经看不下去了
正文
1.注册QQ互联平台账号
网址:QQ互联官网https://connect.qq.com/
在应用管理创建自己的网站应用
这里有一个要注意的地方:
网站回调域:
填写回调地址。在用户授权成功后,会从QQ登录页面跳转回这里指定的回调地址。
下面是我填的信息
网站地址 :www.ncgds.cn网站回调域 :http://www.ncgds.cn/ymx/qqlogin/oauth/callback.php
接下来,下载php sdk
解压sdk放到自己本地web服务器上,(使用本SDK时,请保证您的服务器的short_open_tag 配置为on)访问install目录设置好appid 和 appkey(在QQ互联应用管理详细信息中),还有回调域地址(如我的回调域填写:http://www.ncgds.cn/ymx/qqlogin/oauth/callback.php)一般情况,在服务器上会新建一个目录,如qqlogin,将API目录上传到qqlogin目录下,并将sdk中的example目录下的oauth整个目录上传到qqlogin下,将oauth目录下的callback.php修改为以下(更改了引入路径,将../../修改为../)<?php require_once("../API/qqConnectAPI.php"); $qc = new QC(); echo $qc->qq_callback(); echo $qc->get_openid();再将oauth目录下的index.php修改为以下
<?php require_once("../API/qqConnectAPI.php"); $qc = new QC(); $qc->qq_login();
前端页面编写中,用户登录按钮后,跳转链接href填: qqlogin/oauth,访问oauth目录下的index.php唤起登录接口
callback.php可以更改为如下
<?php require_once("../API/qqConnectAPI.php"); if(empty($_SESSION['access_token']) && empty($_SESSION['openid']) ){ $qc = new QC(); $access_token = $qc->qq_callback(); $openid = $qc->get_openid(); $_SESSION['access_token'] = $access_token; $_SESSION['openid'] = $openid; } header("location:http://www.ncgds.cn/ymx");
到此,登录接口已经实现,具体信息可查看文档接口