网站接入QQ登录的两种方法
2016-05-05 11:40
447 查看
第一种使用系统自带按钮登录,但是这样会弹出新窗口,不喜欢 //调用QC.Login方法,指定btnId参数将按钮绑定在容器节点中 QC.Login({ //btnId:插入按钮的节点id,必选 btnId:"qqLoginBtn", //用户需要确认的scope授权项,可选,默认all scope:"all", //按钮尺寸,可用值[A_XL| A_L| A_M| A_S| B_M| B_S| C_S],可选,默认B_S size: "B_M" }, function(reqData, opts){//登录成功 console.log(reqData, opts); //根据返回数据,更换按钮显示状态方法 var dom = document.getElementById(opts['btnId']), _logoutTemplate=[ //头像 '<span><img src="{figureurl}" class="{size_key}"/></span>', //昵称 '<span>{nickname}</span>', //退出 '<span><a href="javascript:QC.Login.signOut();" rel="external nofollow" >退出</a></span>' ].join(""); dom && (dom.innerHTML = QC.String.format(_logoutTemplate, { nickname : QC.String.escHTML(reqData.nickname), //做xss过滤 figureurl : reqData.figureurl })); }, function(opts){//注销成功 alert('QQ登录 注销成功'); }); 第二种,使用自定义按钮<a>标签链接过去,然后成功后调用这个地址,a标签的href可以参考第一种window.location QC.api("get_user_info", {}) //指定接口访问成功的接收函数,s为成功返回Response对象 .success(function(s){ console.log(s); //成功回调,通过s.data获取OpenAPI的返回数据 alert("获取用户信息成功!当前用户昵称为:"+s.data.nickname); }) //指定接口访问失败的接收函数,f为失败返回Response对象 .error(function(f){ //失败回调 alert("获取用户信息失败!"); }) //指定接口完成请求后的接收函数,c为完成请求返回Response对象 .complete(function(c){ //完成请求回调 alert("获取用户信息完成!"); }); //检查是否登录 if(QC.Login.check()){//如果已登录 QC.Login.getMe(function(openId, accessToken){ alert(["当前登录用户的", "openId为:"+openId, "accessToken为:"+accessToken].join("\n")); }); //这里可以调用自己的保存接口 //... }
相关文章推荐
- 15年编程生涯,资深架构师总结的7条经验
- Android学习常用网站
- iOS架构 - MVC/MVP/MVVM
- Android官方MVP架构示例项目解析
- 用来学习的网站
- iOS中的两种主要架构及其优缺点
- Java 应用一般架构
- 玩游戏写编程网站
- 原创文章对于网站很重要
- windows系统如何访问国外google等网站的方法之一
- 如何上传织梦做的网站
- 架构设计是多进程还是多线程
- 记录网站被cc攻击后所采取的措施
- Postgresql 9 高可用性 手册
- webkit架构和模块
- 中英文双语营销型网站源码整站分享
- 新手 山寨的 中国人民共和国国务院的官方网站 只能看不能点^.^
- 安卓开发 第五篇 我的安卓应用架构设计-----Repository类
- 软件架构的典型组成部分-性能
- 第3课:SparkStreaming 透彻理解三板斧之三:解密SparkStreaming运行机制和架构进阶之Job和容错