转载

在你的网站实现qq登陆(php)

这个qq的oauth2.1有个坑,坑了我半天,后来查了不少资料总算弄通了,现在把详细步骤记录下来。

步骤一、登陆http://connect.qq.com/

在你的网站实现qq登陆(php)

步骤二、创建应用。我创建的是wenwutest这个应用。具体的创建如下图所示:

在你的网站实现qq登陆(php)

要特别注意这个回调地址。首先这个回调地址必须与网站地址的根域名写的一样(http://m.mumayi.com),其次,这里写的这个地址一定是登陆成功后回调的地址。不能再像oauth2.0那样再写个根域名就可以了,我这里就掉在这个坑里半天。

步骤3、下载php的sdk

下载地址:http://wiki.connect.qq.com/sdk%E4%B8%8B%E8%BD%BD

我下的是php oauth2.1的版本

在你的网站实现qq登陆(php)

下好之后,直接将整个目录放到你的服务器。如下图所示:

在你的网站实现qq登陆(php)

步骤四、配置sdk

直接访问install文件,填写相关信息如下图所示:

填写你的应用的appid与appkey和callback地址。这个appid和appkey分别是下图所示的两个值:

在你的网站实现qq登陆(php)

最后的callback地址,一定要注意,一定要和你创建应用时候的callback地址一模一样,否则会出现"iletal uri"错误。这里我创建应用时的callback地址是:http://m.mumayi.com/qq/example/oauth/callback.php。所以我在这里也要填写这个地址。填写完成后,点击"配置”就会配置成功了。

步骤五、访问example/index.html,点击按钮,如下所示

这样就登陆了,登录成功后跳转到我们之前设置好的callback地址。

官方sdk的callback.php文件内容如下:

<?php require_once("../../API/qqConnectAPI.php"); $qc = new QC(); echo $qc->qq_callback();    //返回的验证值 echo '<hr>'; echo $qc->get_openid();        //qq分配的用户id

代码很简单。其中重要的是这个openid的值。一般可以将这个openid和我们现有的用户表做个绑定(如果用户有账号,如果没有,可以完善信息)。

到这里登录就基本完成了。下面我演示下如何获取用户的基本信息,代码很简单:

<?php  /*  *调用接口代码  *  **/ require_once("../../API/qqConnectAPI.php"); $qc = new QC(); $arr = $qc->get_user_info();   echo '<meta charset="UTF-8">'; echo "<p>"; echo "Gender:".$arr["gender"]; echo "</p>"; echo "<p>"; echo "NickName:".$arr["nickname"]; echo "</p>"; echo "<p>"; echo "<img src=/"".$arr['figureurl']."/">"; echo "<p>"; echo "<p>"; echo "<img src=/"".$arr['figureurl_1']."/">"; echo "<p>"; echo "<p>"; echo "<img src=/"".$arr['figureurl_2']."/">"; echo "<p>"; echo "vip:".$arr["vip"]; echo "</p>"; echo "level:".$arr["level"]; echo "</p>"; echo "is_yellow_year_vip:".$arr["is_yellow_year_vip"]; echo "</p>";  ?>

运行以上代码显示效果如下:

在你的网站实现qq登陆(php)

是不是用户名和头像都得到了,做登录够用了吧。想怎么扩展自己去写吧。

希望能帮助到有需要的朋友。

正文到此结束
Loading...