QQ第三方登录实例demo(QQSDK包优化)
来源:互联网 发布:python前三章内容 编辑:程序博客网 时间:2024/05/10 07:24
实现效果:
实现流程:
1、注册QQ互联开发者
QQ互联官网
注册成为开发者(需要审核)
2、审核通过之后
申请应用(需要互联人员审核*需要备案成功的线上域名)
下面我们开始下载QQsdk包
QQsdk包
我下载的是php的
下载之后放在域名根目录下
访问 域名/Connect2.1
输入appId 、appkey 、以及回调地址:域名/Connect2.1/callpack.php(也可以按照例子面试试) 一般只点击 getuserinfo
完成
优化SDK包
1、将em../auth/callbac.php 放到connect2.1目录下 将除了API目录以外的目录全部删除 并将API下的所有文件及目录移动到connect2.1/下 删除API
2、打开 qqConnectAPI.php 修改
<?phpsession_start();/* PHP SDK * @version 2.0.0 * @author connect@qq.com * @copyright © 2013, Tencent Corporation. All rights reserved. *///require_once(dirname(__FILE__)."/comm/config.php");//修改ROOT 为QQ_CONNECT_ROOT //修改CLASS_PATH 为 QQ_CLASS_PATH 为了避免与本地项目常量冲突 将整个个connect2.1下的全部替换define("QQ_CONNECT_ROOT",dirname(__FILE__)."/");define("QQ_CLASS_PATH",QQ_CONNECT_ROOT."class/");require_once(QQ_CLASS_PATH."QC.class.php");
3、删除comm 下的conf.php 以及utils.php
4.修改 class 下的Recorder.class.php
public function __construct(){ $this->error = new ErrorCase(); //将comm/下的inc.php 信息 复制过来 并删除inc.php 并删除comm目录 $incFileContents = '{"appid":"101337757","appkey":"f6588ae8cc52093202d92f6ee33d9af9","callback":"http://www.qqq.com/callback.php","scope":"get_user_info","errorReport":true,"storageType":"file","host":"localhost","user":"root","password":"root","database":"test"}' //-------读取配置文件 //$incFileContents = file(ROOT."comm/inc.php"); // $incFileContents = $incFileContents[1]; // $this->inc = json_decode($incFileContents); /********/ //将上列的contents 转位下列的模式 $this->inc->appid = "101337757"; $this->inc->appkey = "f6588ae8cc52093202d92f6ee33d9af9"; $this->inc->callback = "http://www.qqq.com/callback.php"; $this->inc->scope = "get_user_info"; $this->inc->errorReport = true; $this->inc->storageType = "file" $this->inc->host = "localhost"; $this->inc->user = "root"; $this->inc->password = "root"; $this->inc->database = "test";/********/ if(empty($this->inc)){ $this->error->showError("20001"); } if(empty($_SESSION['QC_userData'])){ self::$data = array(); }else{ self::$data = $_SESSION['QC_userData']; } }
完成!
在根目录下定义:
function.php
<?php /** * [debug 调试输出函数] * @param [mix] $val [调试输出源] * @param [bool] $dump [是否启用var_dump调试] * @param boolean $exit [是否在调试结束后设置断点] * @return [void] */function debug($val,$dump=flase,$exit=true){ //自动或区域调试函数名称$func if($dump){ $func = 'var_dump'; }else{ $func = (is_array($val) || is_object($val)) ? 'print_r' : 'printf'; } //输出到html header("Content-type:text/html;charset=utf-8"); echo "<pre>debug output:<hr/>"; $func($val); echo '</pre>'; if($exit) exit;}?>
定义:qqlogin.php
<?php require_once 'function.php';require_once 'Connect2.1/qqConnectAPI.php';//访问QQ的登录页面$oauth = new Oauth();$oauth->qq_login(); ?>
建立index.html
将qq登陆图片放入页面中、点击跳入到qqlogin.php
修改callback.php
<?phprequire_once("./qqConnectAPI.php");$qc = new QC();echo $qc->qq_callback();echo $qc->get_openid();
完成!!!!!!
项目中截图调取API 示例 :
3 0
- QQ第三方登录实例demo(QQSDK包优化)
- QQ第三方登录实例demo(QQSDK包优化)
- 第三方登录(QQ登录)
- QQ第三方登录
- QQ第三方登录
- QQ第三方登录
- QQ第三方登录
- QQ第三方登录
- 第三方qq登录
- QQ第三方登录
- QQ第三方登录
- QQ第三方登录
- 第三方登录QQ
- QQ第三方登录
- qq第三方登录
- qq第三方登录
- 第三方QQ登录
- QQ第三方登录
- ReactJS component names must begin with capital letters?!
- Codeforces 765F. Souvenirs
- 003_Windows程序设计--窗口与消息
- C++静态链接库
- 类加载机制
- QQ第三方登录实例demo(QQSDK包优化)
- 二十四节气的计算方法
- Spring Boot 静态资源处理
- Poj 1094 Sorting It All Out 【拓扑排序】
- Redis常用的命令(一)-------启动、配置等
- C#DATAGRIDVIEW 清空所有行方法
- angularJS动态生成的页面中,ng-click无效解决办法
- 新交换数据
- bzoj 2186: [Sdoi2008]沙拉公主的困惑 (线性筛+数论)