腾讯空间、新浪微博、腾讯微博登录接口的使用。

注意:在网站对接前,请先申请注册好您的QQ登录appid、新浪登录Appkey、腾讯微博appkey。

1、引用JS文件

[html] view plaincopy
  1. <script src="http://qzonestyle.gtimg.cn/qzone/openapi/qc_loader.js" data-appid="appid"  type="text/javascript" language="javascript"></script>  <!--腾讯QQ-->
  2. <script src="http://tjs.sjs.sinajs.cn/open/api/js/wb.js?appkey=Appkey" type="text/javascript" language="javascript"></script>  <!--新浪微博-->
  3. <script type="text/javascript" src="http://mat1.gtimg.com/app/openjs/openjs.js"></script>   <!--腾讯微博-->

其中,上面代码中的“APPID”替换为申请接入QQ登录时获得的appid;“Appkey”替换为申请接入新浪登录时获得的Appkey。

2、HTML代码

[html] view plaincopy
  1. <span id="tpa_login_qq"></span>
  2. <span id="tpa_login_sina"></span>
  3. <span id="tpa_login_tqq"></span>

3、JS脚本

[javascript] view plaincopy
  1. $(document).ready(function() {
  2. tpaLogin.init();
  3. });
  4. //第三方平台登录
  5. var tpaLogin = {
  6. init: function() {
  7. tpaLogin.qzone();    //初始化QQ登录
  8. tpaLogin.sina();     //初始化新浪登录
  9. tpaLogin.tqq();      //初始化腾讯微博登录
  10. },
  11. //保存登录用户信息
  12. param: {
  13. tpaUserSerialNo: '',   //用户序号
  14. nickname: '',          //用户昵称
  15. figureurl1: '',        //用户头像Url(小图)
  16. figureurl2: '',        //用户头像Url(中图)
  17. figureurl3: '',        //用户头像Url(大图)
  18. gender: ''             //性别(1:男、2:女)
  19. },
  20. //参数重置
  21. paramReset: function() {
  22. tpaLogin.param.tpaUserSerialNo = '';
  23. tpaLogin.param.nickname = '';
  24. tpaLogin.param.figureurl1 = '';
  25. tpaLogin.param.figureurl2 = '';
  26. tpaLogin.param.figureurl3 = '';
  27. },
  28. //QQ空间
  29. qzone: function() {
  30. QC.Login(
  31. {
  32. btnId: "tpa_login_qq",
  33. //按钮尺寸,可用值[A_XL| A_L| A_M| A_S|  B_M| B_S| C_S],可选,默认B_S
  34. size: "B_M"
  35. },
  36. function(reqData, opts) {
  37. tpaLogin.paramReset();
  38. //获取登录用户信息
  39. QC.Login.getMe(function(openId, accessToken) {
  40. tpaLogin.param.tpaUserSerialNo = openId;     //用户序号
  41. });
  42. tpaLogin.param.nickname = reqData.nickname;
  43. tpaLogin.param.figureurl1 = reqData.figureurl;
  44. tpaLogin.param.figureurl2 = reqData.figureurl_1;
  45. tpaLogin.param.figureurl3 = reqData.figureurl_2;
  46. if (reqData.gender == "男") {
  47. tpaLogin.param.gender = 1;
  48. } else {
  49. tpaLogin.param.gender = 2;
  50. }
  51. //根据返回数据,更换按钮显示状态方法
  52. var dom = document.getElementById(opts['btnId']),
  53. _logoutTemplate = [
  54. //头像
  55. '<span><img src="{figureurl}" class="{size_key}"/></span>',
  56. //昵称
  57. '<span>{nickname}</span>',
  58. //退出
  59. '<span><a href="javascript:QC.Login.signOut();">退出</a></span>'
  60. ].join("");
  61. dom && (dom.innerHTML = QC.String.format(_logoutTemplate, {
  62. nickname: QC.String.escHTML(reqData.nickname), //做xss过滤
  63. figureurl: reqData.figureurl
  64. }));
  65. },
  66. function(opts) {
  67. //注销成功
  68. alert('QQ登录 注销成功');
  69. }
  70. );
  71. },
  72. //新浪
  73. sina: function() {
  74. WB2.anyWhere(function(W) {
  75. W.widget.connectButton({
  76. id: "tpa_login_sina",   //按钮ID
  77. type: "3,5",            //按钮样式
  78. callback: {
  79. login: function(ret) {
  80. tpaLogin.paramReset();
  81. //获取登录用户信息
  82. tpaLogin.param.tpaUserSerialNo = ret.id;    //用户序号
  83. tpaLogin.param.nickname = ret.screen_name;
  84. tpaLogin.param.figureurl1 = ret.profile_image_url;
  85. tpaLogin.param.figureurl2 = ret.avatar_large;
  86. tpaLogin.param.figureurl3 = ret.avatar_large;
  87. if (ret.gender == "m") {
  88. tpaLogin.param.gender = 1;
  89. } else {
  90. tpaLogin.param.gender = 2;
  91. }
  92. },
  93. logout: function() {
  94. //注销成功
  95. alert('新浪登录 注销成功');
  96. }
  97. }
  98. })
  99. })
  100. },
  101. //腾讯微博
  102. tqq: function() {
  103. T.init({
  104. appkey: appkey
  105. });
  106. var _loginBtn = $('<a href="javascript:;">登录到腾讯微博</a>').appendTo($("#tpa_login_tqq")).click(function() {
  107. T.login(function(loginStatus) { // 弹出登录窗口
  108. // 本次登录成功
  109. var _name = $('<span style="display:none;"></span>').appendTo($("#tpa_login_tqq"));
  110. var _logoutBtn = $('<a href="javascript:;" style="display:none;margin-left:5px;">退出</a>').appendTo($("#tpa_login_tqq")).click(function() {
  111. T.logout(function() {
  112. //注销成功
  113. alert('腾讯微博 注销成功');
  114. _name.hide();
  115. _logoutBtn.hide();
  116. _loginBtn.show();
  117. })
  118. });
  119. _name.show().text(loginStatus.nick);
  120. _logoutBtn.show();
  121. _loginBtn.hide();
  122. //获取微博信息
  123. T.api("/user/info")
  124. .success(function(response) {
  125. tpaLogin.param.tpaUserSerialNo = response.data.openid;    //用户序号
  126. tpaLogin.param.nickname = response.data.nick;
  127. tpaLogin.param.figureurl1 = response.data.head;
  128. tpaLogin.param.figureurl2 = response.data.head;
  129. tpaLogin.param.figureurl3 = response.data.head;
  130. if (response.data.sex == "1") {
  131. tpaLogin.param.gender = 1;
  132. } else {
  133. tpaLogin.param.gender = 2;
  134. }
  135. })
  136. .error(function(code, message) {
  137. alert(message);
  138. });
  139. }, function(error) {
  140. // 本次登录成功
  141. //alert("登录失败");
  142. });
  143. });
  144. },
  145. //退出
  146. logout: function() {
  147. if (QC.Login != null && QC.Login.check()) {
  148. QC.Login.signOut();
  149. }
  150. else if (WB2 != null && WB2.checkLogin()) {
  151. WB2.logout();
  152. }
  153. else if (T.loginStatus()) {
  154. T.logout();
  155. }
  156. }
  157. };

附件

1、QQ登录文档:http://wiki.connect.qq.com/js_sdk%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8E

2、新浪登录文档:http://open.weibo.com/wiki/index.php/Weibo-JS_V2#.E5.BE.AE.E5.8D.9A.E8.BF.9E.E6.8E.A5.E6.8C.89.E9.92.AE

3、腾讯微博文档:http://wiki.open.t.qq.com/index.php/Open-js

来源于:http://blog.csdn.net/pan_junbiao/article/details/17507065

腾讯空间、新浪微博、腾讯微博登录接口的使用相关推荐

  1. 腾讯空间、新浪微博、腾讯微博登录接口

    腾讯空间.新浪微博.腾讯微博登录接口的使用. 注意:在网站对接前,请先申请注册好您的QQ登录appid.新浪登录Appkey.腾讯微博appkey. 1.引用JS文件 <script src=& ...

  2. 视频教程-微博登录接口开发-PHP

    微博登录接口开发 2009年4月创办 淄博日诺网络科技有限公司 法人总经理 2016年负责 中国传媒大学凤凰学院 网站开发 项目负责人 2017年 参与负责 用友软件理财项目开发 郭孟涛 ¥39.00 ...

  3. 关于新浪微博开放平台微博登录授权后再次登录会自动登录问题的解决办法

    ios和android版本sso登陆和Oauth2.0登录跳转到新浪登录页面后,如果客户端里只有一个帐号,那么就会默认地选择这个帐号授权了,没给用户选择,也无法添加帐号.这种情况只能先去新浪的客户端里 ...

  4. 绑定新浪微博API 实现验证 登录 返回接口获取信息

    最近公司要求实现一个绑定新浪微博  实现同步微博登录效果. 花了我一段时间 最算实现了效果.下面我讲讲我的实现过程,希望给予想做这方面开发的人一点帮助! 首先,我们要进去新浪微博开放平台http:// ...

  5. php qq分享内容到指定qq,分享内容到新浪微博|腾讯微博|qq空间

    分享内容到新浪微博|腾讯微博|qq空间 (2013-10-29 14:05:30) 标签: 内容 分享 微博 空间 分类: php function forward_sinaweibo(title) ...

  6. js分享代码(新浪微博,腾讯微博,QQ空间,QQ好友)

    js分享代码(新浪微博,腾讯微博,QQ空间,QQ好友) 代码如下: <!DOCTYPE html> <html lang="en"> <head> ...

  7. 新浪微博,腾讯微博,QQ号码 联合登录。。。完善中...

    新浪微博 技术接口地址:http://open.t.sina.com.cn/wiki/SDK 腾讯微博 技术接口地址:http://open.t.qq.com/open-js/doc/ QQ号码登录 ...

  8. 安卓 android一键分享 新浪微博 腾讯微博,qq空间,qq,人人网

    安卓 android一键分享 新浪微博 腾讯微博,qq空间,qq,人人网 附源码:  http://download.csdn.net/detail/zjgwxh/8678809

  9. pythonurllib微博登录怎么删_Python使用cookielib和urllib2模拟登陆新浪微博并抓取数据...

    我们都知道HTTP是无连接的状态协议,但是客户端和服务器端需要保持一些相互信息,比如cookie,有了cookie,服务器才能知道刚才是这个用户登录了网站,才会给予客户端访问一些页面的权限. 用浏览器 ...

最新文章

  1. python 选择题 多线程_python多线程一些知识点梳理
  2. 小米面试:二叉搜索中第K小的元素
  3. 机器学习知识点(四)最小二乘法Java实现
  4. python如何下载tushare_安装tushare
  5. MFC常用类、成员函数、数组类、Cstring类、CTime类、CPoint类
  6. 神策数据桑文锋:让销售回归科学
  7. python2.面向对象.学生管理
  8. 【Python】Python库之文本处理
  9. Python学习笔记(十)—— 高级特性
  10. @loj - 2483@「CEOI2017」Building Bridges
  11. anroid Sqlite批量插入数据优化方法
  12. Win10与Ubuntu18.04之smb相互共享
  13. ArcGIS(ArcMap)进行缓存切片
  14. 大数据团队工作与建设
  15. linux宝塔怎么添加二级域名,如何绑定二级域名使用宝塔面板?
  16. mysql 重做日志原理_MySQL-重做日志 redo log -原理
  17. 面向对象编程原则(06)——依赖倒转原则
  18. 般若波罗蜜多心经——背过最好了
  19. 二叉树【按层打印、序列化、反序列化】
  20. Bootstrap3动态添加的元素tooltip不生效

热门文章

  1. ORA-01654: unable to extend index by 128 in tablespace USERS
  2. DEFLATE压缩数据格式规范 v1.3
  3. CUIT Online Judge 最大值与最小值
  4. 笔记本cpu排行榜天梯图2021最新版
  5. “龙王宝”小程序,送水站老板轻松赚钱的神秘武器
  6. 智慧数字经营小程序存在的意义和价值分析
  7. 2020 ccpc-good number
  8. 企业员工入职培训怎么做?培训内容分享
  9. 微软补丁星期二值得关注的漏洞
  10. 高清正射影像如何装入手机使用?