OAUth2.0之微博社交登录

您所在的位置:网站首页 oauth2登录流程 OAUth2.0之微博社交登录

OAUth2.0之微博社交登录

2023-09-23 15:07| 来源: 网络整理| 查看: 265

QQ、微博、github等网站的用户量非常大,别的网站为了简化自我网站的登陆与注册逻辑,引入社交登陆功能;

步骤: 1)、用户点击QQ按钮 2)、引导跳转到QQ授权页 3)、用户主动点击授权,跳回之前网页。

1、OAuth2.0 OAuth: OAuth(开放授权)是一个开放标准,允许用户授权第三方网站访问他们存储在另外的服务提供者上的信息,而不需要将用户名和密码提供给第三方网站或分享他们数据的所有内容。OAuth2.0:对于用户相关的OpenAPI(例如获取用户信息,动态同步,照片,日志,分享等),为了保护用户数据的安全和隐私,第三方网站访问用户数据前都需要显式的向用户征求授权。官方版流程:

在这里插入图片描述

(A)用户打开客户端以后,客户端要求用户给予授权。   (B)用户同意给予客户端授权。   (C)客户端使用上一步获得的授权,向认证服务器申请令牌。   (D)认证服务器对客户端进行认证以后,确认无误,同意发放令牌。   (E)客户端使用令牌,向资源服务器申请获取资源。   (F)资源服务器确认令牌无误,同意向客户端开放资源。 https://open.weibo.com/wiki/%E6%8E%88%E6%9D%83%E6%9C%BA%E5%88%B6

2、微博登陆准备工作

1、进入微博开放平台

2、登陆微博,进入微连接,选择网站接入 在这里插入图片描述 3、选择立即接入 在这里插入图片描述

4、创建自己的应用

5、我们可以在开发阶段进行测试了在这里插入图片描述 记住自己的app key和app secret我们一会儿用

6、进入高级信息,填写授权回调页的地址 在这里插入图片描述 7、添加测试账号(选做)

8、进入文档,按照流程测试社交登陆

3、微博登陆测试

1、引导用户到如下地址 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 YOUR_REGISTERED_REDIRECT_URI:就是返回成功的uri http://www.xpshop.com/success

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

http://www.xpshop.com/success?code=833e49ec7f1d086e468765de67a44a20

3、使用返回的code,换取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

在这里插入图片描述

像这样 返回一个access_token 和uid

4、使用AccessToken可以调用开发API获取用户信息 https://open.weibo.com/wiki/%E5%BE%AE%E5%8D%9AAPI

比如获取某个用户最新发表的微博列表: https://api.weibo.com/2/statuses/user_timeline.json?access_token=2.00ZXwR_E0ydeS9f30a0db480L5bW8C 在这里插入图片描述

至此微博登陆调试完成。

Oauth2.0;授权通过后,使用code换取access_token,然后去访问任何开放API 1)、code用后即毁 2)、access_token在几天内是一样的

4、社交登录的步骤

1)、给页面放一个社交登录按钮,点击地址是 微博登录 2)、用户只要授权通过了,会自动跳转到我们指定的http://www.xpshop.com/success,会给url后面带一个code=xxxxxxxx 3)、拿到这个code发送请求换取access_token即可。 4)、拿到access_token可以调用所有的开放api; 你可以将用户的信息都保存自己的网站。

核心: code一次性的,只要用过就作废。 access_token:是固定的,一段时间完全固定。 uid:是永远固定的。 我们自己的系统如何标识唯一用户,就是使用社交网站的uid。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3