认证服务---OAuth2.0基本介绍,微博登录测试【上篇】

简介: 这篇文章是关于OAuth2.0的介绍和微博登录测试的教程,详细解释了OAuth2.0的基本概念和授权流程,并指导读者如何在新浪微博开放平台进行应用创建、设置回调地址,以及使用Postman工具进行授权测试,为实现第三方微博登录功能做准备。

前言

比如说你要使用一个从来未注册过的软件,一般来讲你需要先注册成为这个软件的用户,然后登录后才可以使用该软件。但是为了方便起见,现在的大部分软件会允许你第三方登录。比如说、你可以通过微信、微博、QQ等其它社交软件辅助登录,这样就可以在不进行“注册”的情况下进行登录该软件。

1、OAuth2.0

  • OAuth: OAuth(开放授权)是一个开放标准,允许用户授权第三方网站访问他们存储在另外的服务提供者上的信息,而不需要将用户名和密码提供给第三方网站或分享他们数据的所有内容。

  • OAuth2.0:对于用户相关的 OpenAPI(例如获取用户信息,动态同步,照片,日志,分享等),为了保护用户数据的安全和隐私,第三方网站访问用户数据前都需要显式的向用户征求授权。

官方流程

关于 OAuth2.0 协议的授权流程可以参考下面的流程图,其中 Client 指第三方应用,Resource Owner 指用户,Authorization Server 是微博开放平台的授权服务器,Resource Server 是微博开放平台的 API 服务器。

在这里插入图片描述
1、用户打开客户端以后,客户端要求用户给予授权。
2、用户同意给予客户端授权。
3、客户端使用上一步获得的授权,向认证服务器申请令牌。
4、认证服务器对客户端进行认证以后,确认无误,同意发放令牌。
5、客户端使用令牌,向资源服务器申请获取资源。
6、资源服务器确认令牌无误,同意向客户端开放资源。

2、微博登录工作准备

2.1 登录平台

地址直达:新浪微博开放平台

提示:如果第一次登录微博开放平台,你需要填写基本的个人信息,以及身份认证(不进行身份认证是不能创建应用的,认证也快)

在这里插入图片描述

2.2 创建应用

1、在微连接中,选择网站接入

在这里插入图片描述

2、选择立即创建微连接

在这里插入图片描述

3、点击立即接入
在这里插入图片描述

4、填写应用名称,创建

在这里插入图片描述

2.3 查看创建的应用

在这里插入图片描述

2.4 添加回调地址

当你进行了授权,比如说,你扫码登录了微博、并且成功授权。然后跳转页面跳转到你指定的这个位置。(我这里遇到一个坑,在分布式下,不同的微服务的接口调用,需要经过网关的处理。调用接口的时候、一定要确保在对应微服务的域名之下,否则会找不到调用的信息,报404错误)

在这里插入图片描述

3、查看官方使用手册

官方文档
在文档中的 OAuth2.0授权认证 ,有具体的使用情况。这里不在进行赘述

在这里插入图片描述

3.1 基本流程

1、引导需要授权的用户到如下地址:

https://api.weibo.com/oauth2/authorize?client_id=YOUR_CLIENT_ID&response_type=code&redirect_uri=YOUR_REGISTERED_REDIRECT_URI

2、如果用户同意授权,页面跳转YOUR_REGISTERED_REDIRECT_URI/?code=CODE

3、 换取Access Token

https://api.weibo.com/oauth2/access_token?client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET&grant_type=authorization_code&redirect_uri=YOUR_REGISTERED_REDIRECT_URI&code=CODE

client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET可以使用basic方式加入header中。

4、使用获得的Access Token调用API

4、使用Postman测试

1、引导用户到授权页面,这个是图片也可以填写账号

https://api.weibo.com/oauth2/authorize?client_id=你的&response_type=code&redirect_uri=你的###

2、获取返回的code

在这里插入图片描述

3、换取Access Token

https://api.weibo.com/oauth2/access_token?client_id=你的&client_secret=你的&grant_type=authorization_code&redirect_uri=你的&code=返回的code

在这里插入图片描述

4、调用接口拿取数据

在这里插入图片描述

在这里插入图片描述

5 提示

5.1、提示一

引导需要授权的用户到如下地址,大致流程就是,你通过这个点击某个按钮或者图片也好,进入这个地址,然后进行授权。授权成功就跳转到redirect_uri指定的位置,一定要确保这里填写的位置和在应用中填写的回调地址保持一致,否则报错

https://api.weibo.com/oauth2/authorize?client_id=YOUR_CLIENT_ID&response_type=code&redirect_uri=YOUR_REGISTERED_REDIRECT_URI

YOUR_CLIENT_ID 对应应用里边的App Key

下一篇写项目中的实际应用

相关文章
使用postman测试接口时需要先登录怎么办
使用postman测试接口时需要先登录怎么办
2830 0
使用postman测试接口时需要先登录怎么办
|
1月前
|
测试技术 数据安全/隐私保护
北邮人论坛登录页面测试用例
北邮人论坛登录页面测试用例
35 1
|
2月前
|
JavaScript 前端开发 数据库
测试开发之路--Flask 之旅 (四):登录与权限控制
本文介绍了如何使用 Flask-Security 和 Flask-Login 实现权限管理和用户登录功能。首先讲解了 Flask 的消息闪现功能,用于向模板传递信息。接着介绍了如何利用 Flask-Security 的 `roles_required` 和 `roles_accepted` 装饰器保护页面,并展示了如何通过 `current_user` 获取当前用户信息。最后提到了使用 Flask-Login 时应避免升级至 0.4.0 版本,以防出现兼容性问题。通过这些技术,搭建了一个基本的用户权限管理系统。
99 6
测试开发之路--Flask 之旅 (四):登录与权限控制
|
4月前
|
JavaScript 测试技术
vue 官方测试工具 unit-jest 实用教程(含实战范例:登录组件的测试)
vue 官方测试工具 unit-jest 实用教程(含实战范例:登录组件的测试)
83 0
|
4月前
|
JSON 数据格式
postman 实用教程(含带 token 访问需登录权限的接口、测试文件上传接口、测试文件下载接口)
postman 实用教程(含带 token 访问需登录权限的接口、测试文件上传接口、测试文件下载接口)
629 0
|
6月前
|
前端开发 Java 测试技术
selenium+python自动化测试--登录
selenium+python自动化测试--登录
95 2
|
6月前
|
SQL 存储 编解码
你会测试 登录 吗?
你会测试 登录 吗?
101 0
你会测试 登录 吗?
|
安全 测试技术 数据安全/隐私保护
安全测试----用户同时采用两种校验方法,通过才可以登录成功
安全测试----用户同时采用两种校验方法,通过才可以登录成功
|
存储 安全 JavaScript
npm 账户的创建、测试、登录
npm 账户的创建、测试、登录