文档章节

第三方登录之QQ登录(二)——OAuth2.0处理流程介绍(以QQ登录为例)

白志华
 白志华
发布于 2015/10/18 10:56
字数 609
阅读 14
收藏 0
点赞 0
评论 0

为了让网站更快接入,腾讯提供了JS SDK的接入方案,具体点击这里或者点击这里进行查看。

不过也可以自己写代码,当然你需要了解QQ的OAuth2.0的处理流程(Web Server Flow)。

OAuth2.0的处理流程: 点击 这里 查看官方Wiki。

1.授权:获取授权码Authorization Code 

说明:第一步QQ必须得到要登录系统的授权信息,如果授权全成功,则会跳转到回调地址,同时授权码以参数形式,追加回调地址上。

当然还有一些其他参数,具体详情看 官方介绍

返回:

2. 登录:通过Authorization Code获取Access Token

说明:获取网址中的code值,这个就是Authorization Code,通过它,可以获取访问令牌。这个访问令牌,事实上是给登录系统用的,主要是允许访问QQ的授权服务。( 注意:不要向别人泄漏Access Token,因为它有3个月时效

 详细请看 官方介绍

实例:

返回:

3. 获取用户openid

说明:先说一下openid,它是此网站上或应用中唯一对应用户身份的标识,与QQ号一一对应。网站或应用可将此ID进行存储,便于用户下次登录时辨识其身份,或将其与用户在网站上或应用中的原有账号进行绑定。有了它以后就可以确定当前登录的QQ,获取到QQ登录用户的基本信息了。( 注意:不要向别人泄漏OpenID

实例:
返回:

4. 调用OpenAPI获取各种信息

点击 API列表。里面有每个API的使用说明。当然前提是你的应用或网站有这个api的授权信息才可以。点击“应用管理”中的“API管理”,可以看到所有已授权和未授权的API。


作为演示,我这里选择的是获取用户信息api:get_user_info
 
实例:
返回

版权声明:本文为博主原创文章,未经博主允许不得转载。

本文转载自:http://blog.csdn.net/xiaoxian8023/article/details/38114921

共有 人打赏支持
白志华
粉丝 29
博文 260
码字总数 57524
作品 0
长沙
程序员
OAuth 2.0 简介

OAuth 简介: OAuth.png OAuth: OAuth(开放授权)是一个开放标准,允许用户授权第三方移动应用访问他们存储在另外的服务提供者上的信息,而不需要将用户名和密码提供给第三方移动应用或分享...

常大鹏 ⋅ 2016/08/05 ⋅ 0

如何在Android手机中开发QQ账户登陆功能的应用

背景 OAUTH开发授权协议,为用户资源的授权提供了一个安全开放而又简易的标准。可以使用第三方的账户登陆另一个方的应用或服务,而不暴露给另一个应用该账户的信息。现在已经得到广泛的应用,...

长平狐 ⋅ 2012/09/06 ⋅ 0

oauth 开放授权

本想前段时间就把自己通过QQ OAuth1.0、OAuth2.0协议进行验证而实现QQ登录的心得及Demo实例分享给大家,可一直很忙,今天抽点时间说下OAuth1.0协议原理,及讲解下QQ对于Oauth1.0的认证开发。...

bengozhong ⋅ 2016/08/15 ⋅ 0

OAuth的机制原理讲解及开发流程

本想前段时间就把自己通过QQ OAuth1.0、OAuth2.0协议进行验证而实现QQ登录的心得及Demo实例分享给大家,可一直很忙,今天抽点时间说下OAuth1.0协议原理,及讲解下QQ对于Oauth1.0的认证开发。...

只想一个人静一静 ⋅ 2014/04/26 ⋅ 0

第三方QQ登录 server-side

腾讯官方文档 申请appid和appkey的用途 appid:应用的唯一标识。在OAuth2.0认证过程中,appid的值即为oauthconsumerkey的值。 appkey:appid对应的密钥,访问用户资源时用来验证应用的合法性...

xinson ⋅ 2014/09/10 ⋅ 0

网站应用微信登录功能接口开发指南

准备工作 网站应用微信登录是基于OAuth2.0协议标准构建的微信OAuth2.0授权登录系统。 在进行微信OAuth2.在进行微信OAuth2.0授权登录接入之前,在微信开放平台注册开发者帐号,并拥有一个已审...

雪深 ⋅ 2015/02/03 ⋅ 0

在django中实现QQ登录

在服务器端做qq登录的流程: 1.放置QQ登录按钮,这个去QQ的网站上下,把这个按钮的连接指向https://graph.qq.com/oauth2.0/authorize?responsetype=code& clientid=[YOUR_APPID]&redirect_u...

长平狐 ⋅ 2012/09/06 ⋅ 0

【基础概念】 OAuth的认知以及开发流程

什么是OAUTH? OAUTH协议为用户资源的授权提供了一个安全的、开放而又简易的标准。与以往的授权方式不同之处是OAUTH的授权不会使第三方触及到用户的帐号信息(如用户名与密码),即第三方无需...

林元煌 ⋅ 2017/06/11 ⋅ 0

安卓版类今日头条 App--TouTiao

Android 初学者做了一个头条 App,觉得好的可以看一下具体的内容! 技术栈 使用Joup和Okhttp进行网络数据的爬取 使用Recyclerview和PageFragment和自定义数据类型进行新闻数据的显示 基于Ret...

LaravelChe ⋅ 2017/06/23 ⋅ 0

如何配置外部邮箱(帮你少走弯路)—JEPLUS软件快速开发平台

JEPLUS如何配置外部邮箱(帮你少走弯路) 大家全知道JEPLUS提供外部游戏、即可以把自己的邮箱托管到系统中。但是很多用户经常配置出错导致这么好的功能没法用。今天我们以QQ邮箱和腾讯企业邮箱...

JEPLUS ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

来自一个优秀Java工程师的简历

写在前面: 鉴于前几天的一份前端简历,虽然带着很多不看好的声音,但却帮助了很多正在求职路上的人,不管评论怎么说,我还是决定要贴出一份后端的简历。 XXX ID:357912485 目前正在找工作 ...

颖伙虫 ⋅ 19分钟前 ⋅ 0

Confluence 6 恢复一个站点有关使用站点导出为备份的说明

推荐使用生产备份策略。我们推荐你针对你的生产环境中使用的 Confluence 参考 Production Backup Strategy 页面中的内容进行备份和恢复(这个需要你备份你的数据库和 home 目录)。XML 导出备...

honeymose ⋅ 今天 ⋅ 0

JavaScript零基础入门——(九)JavaScript的函数

JavaScript零基础入门——(九)JavaScript的函数 欢迎回到我们的JavaScript零基础入门,上一节课我们了解了有关JS中数组的相关知识点,不知道大家有没有自己去敲一敲,消化一下?这一节课,...

JandenMa ⋅ 今天 ⋅ 0

火狐浏览器各版本下载及插件httprequest

各版本下载地址:http://ftp.mozilla.org/pub/mozilla.org//firefox/releases/ httprequest插件截至57版本可用

xiaoge2016 ⋅ 今天 ⋅ 0

Docker系列教程28-实战:使用Docker Compose运行ELK

原文:http://www.itmuch.com/docker/28-docker-compose-in-action-elk/,转载请说明出处。 ElasticSearch【存储】 Logtash【日志聚合器】 Kibana【界面】 答案: version: '2'services: ...

周立_ITMuch ⋅ 今天 ⋅ 0

使用快嘉sdkg极速搭建接口模拟系统

在具体项目研发过程中,一旦前后端双方约定好接口,前端和app同事就会希望后台同事可以尽快提供可供对接的接口方便调试,而对后台同事来说定好接口还仅是个开始、设计流程,实现业务逻辑,编...

fastjrun ⋅ 今天 ⋅ 0

PXE/KickStart 无人值守安装

导言 作为中小公司的运维,经常会遇到一些机械式的重复工作,例如:有时公司同时上线几十甚至上百台服务器,而且需要我们在短时间内完成系统安装。 常规的办法有什么? 光盘安装系统 ===> 一...

kangvcar ⋅ 昨天 ⋅ 0

使用Puppeteer撸一个爬虫

Puppeteer是什么 puppeteer是谷歌chrome团队官方开发的一个无界面(Headless)chrome工具。Chrome Headless将成为web应用自动化测试的行业标杆。所以我们很有必要来了解一下它。所谓的无头浏...

小草先森 ⋅ 昨天 ⋅ 0

Java Done Right

* 表示难度较大或理论性较强。 ** 表示难度更大或理论性更强。 【Java语言本身】 基础语法,面向对象,顺序编程,并发编程,网络编程,泛型,注解,lambda(Java8),module(Java9),var(...

风华神使 ⋅ 昨天 ⋅ 0

Linux系统日志

linux 系统日志 /var/log/messages /etc/logrotate.conf 日志切割配置文件 https://my.oschina.net/u/2000675/blog/908189 logrotate 使用详解 dmesg 命令 /var/log/dmesg 日志 last命令,调......

Linux学习笔记 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部