QQ三方登录步骤详解

摘要:
get_user_Info不需要输入参数,因此params中没有参数varparam={}//调用OpenAPIQC。api与JSSDK//指定成功访问接口的接收器函数。如果s成功,则返回响应对象。成功(函数{console.info(s);console.inf(s.data);//回调成功。通过s.data获取OpenAPI返回的数据警报(“获取用户信息成功!”);})//指定接口完成请求后的接收函数。c返回Response对象。complete(函数(c){QC.Login.getMe(函数(openId,accessToken){alert(“当前登录用户的openId为:”+openId+“accessToken为:”+accessToken);})用于完成请求//完成请求回调警报(“获取用户信息已完成!”);})腾讯不提供用户的qq号,因此必须根据用户的openid标记用户的唯一性。在线项目测试后,上述文章内容正常。您可以获取用户的昵称和其他信息,以及openid

首先,登录QQ互联:http://connect.qq.com/intro/login  ,注册成为开发者

QQ三方登录步骤详解第1张

选择申请加入,并创建你的应用。

QQ三方登录步骤详解第2张

创建成功后可以获取到appid和appkey

 

在网站的主页引入下面代码

<script type="text/javascript" src="http://qzonestyle.gtimg.cn/qzone/openapi/qc_loader.js"    data-appid="APPID" data-redirecturi="REDIRECTURI" charset="utf-8">  </script>  

其中APPID就是你应用的appid,REDIRECTURI则是你注册应用时填写的回调地址

QQ提供了多种快速登录的方式,这里只说JS SDK的方式

在确定上面js引入成功后,在页面合适位置放置下面代码

<span ></span>

<script type="text/javascript">
QC.Login({
btnId : "qqLoginBtn",//插入按钮的html标签id
size : "B_M",//按钮尺寸
scope : "get_user_info",//展示授权,全部可用授权可填 all
display : "pc"//应用场景,可选
});
</script>

此时可以弹出登录窗,如果要获取用户信息,则需要一个回调页面,这里使用的是官方的demo,QQ_callback.html,源码如下

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title> QQConnect JSDK - redirectURI </title>
<style type="text/css">
html, body{font-size:14px; line-height:180%;}
</style>

</head>
<body>

<div>
<h3>数据传输中,请稍后...</h3>
</div>

</body>
</html>

<script type="text/javascript" src="http://qzonestyle.gtimg.cn/qzone/openapi/qc_loader.js" charset="utf-8" data-callback="true"></script>

在主页写入接受回调的js代码:

<script type="text/javascript">
//从页面收集OpenAPI必要的参数。get_user_info不需要输入参数,因此paras中没有参数
var paras = {};

//用JS SDK调用OpenAPI
QC.api("get_user_info", paras)
//指定接口访问成功的接收函数,s为成功返回Response对象
.success(function(s){
console.info(s);
console.info(s.data);
//成功回调,通过s.data获取OpenAPI的返回数据
alert("获取用户信息成功!当前用户昵称为:"+s.data.nickname);
})
//指定接口访问失败的接收函数,f为失败返回Response对象
.error(function(f){
//失败回调
alert("获取用户信息失败!");
})
//指定接口完成请求后的接收函数,c为完成请求返回Response对象
.complete(function(c){
QC.Login.getMe(function(openId, accessToken){
alert("当前登录用户的openId为:"+openId+ " accessToken为:"+accessToken);
});
//完成请求回调
alert("获取用户信息完成!");

});
</script>

腾讯现在不提供用户的qq号码,所以只好根据用户的openid来标示用户的唯一性。

以上文章内容经过上线项目测试正常。可以获取到用户的昵称等信息,以及openid

 

免责声明:文章转载自《QQ三方登录步骤详解》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Android如何制作漂亮的自适布局的键盘Java 数组 可变长参数 实例下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

***微信 该连接无法访问问题解决办法

微信开发是提示: 该连接无法访问问题解决办法 解决: 1、第一个修改接口权限中的域名为你的业务服务器的域名 2、请检查参数是否填写错误,是否拥有scope参数对应的授权作用域权限。 主要涉及的是 网页授权获取用户基本信息 http://mp.weixin.qq.com/wiki/17/c0f37d5704f0b64713d5d2c37b468d75.h...

.NET微信开发通过Access Token和OpenID获取用户信息

本文介绍如何获得微信公众平台关注用户的基本信息,包括昵称、头像、性别、国家、省份、城市、语言。 本文的方法将囊括订阅号和服务号以及自定义菜单各种场景,无论是否有高级接口权限,都有办法来获得用户基本信息,而无需模拟登录。 在本文中,特别要注意的是有两个不同的Access Token,他们产生的方式不一样,一种是使用AppID和AppSecret获取的acce...

微信公众号开发系列-获取微信OpenID

在微信开发时候在做消息接口交互的时候须要使用带微信加密ID(OpenId),下面讲讲述2中类型方式获取微信OpenID。接收事件推送方式和网页授权获取用户基本信息方式获取。 1、通过接收被动消息方式获取OpenId(接收事件推送方式)。下面事件中都能够获取到OpenID 关注/取消关注事件 用户在关注与取消关注公众号时。微信会把这个事件推送到开发人员填...

[转]iOS/iphone开发如何为苹果开发者帐号APPID续费

原文地址:http://blog.sina.com.cn/s/blog_68661bd80101nme6.html 其实相当的简单,这篇内容是给财务看的,有的地方连我自己看了都感觉有点。。。但如果不详细,她又要为难我,所以我就当她0智商 1.     打开 https://developer.apple.com/account/overview.actio...

微信开放平台开发——网页微信扫码登录(OAuth2.0)

1、OAuth2.0 OAuth(开放授权)是一个开放标准,允许用户让第三方应用访问该用户在某一网站上存储的私密的资源(如照片,视频,联系人列表),而无需将用户名和密码提供给第三方应用。 允许用户提供一个令牌,而不是用户名和密码来访问他们存放在特定服务提供者的数据。每一个令牌授权一个特定的网站(例如,视频编辑网站)在特定的时段(例如,接下来的2小时内)内...

微信公众平台开发——微信授权登录(OAuth2.0)

1、OAuth2.0简介   OAuth(开放授权)是一个开放标准,允许用户让第三方应用访问该用户在某一网站上存储的私密的资源(如照片,视频,联系人列表),而无需将用户名和密码提供给第三方应用。   允许用户提供一个令牌,而不是用户名和密码来访问他们存放在特定服务提供者的数据。每一个令牌授权一个特定的网站(例如,视频编辑网站)在特定的时段(例如,接下来的2...