07.oAuth2介绍

07.oAuth2介绍

 

微信可以任意的去添加客户端,第三方的客户端,。去生成key和secret。你就自动成为他的第三方可以,去调用微信的api

07.oAuth2介绍_第1张图片

 

简书的第三方登陆

07.oAuth2介绍_第2张图片

点击微博,这里用到OAuth里面最严格的一种模式

这是跳转到微博的页面地址:

https://api.weibo.com/oauth2/authorize?client_id=1881139527&redirect_uri=http%3A%2F%2Fwww.jianshu.com%2Fusers%2Fauth%2Fweibo%2Fcallback&response_type=code&state=%257B%257D

07.oAuth2介绍_第3张图片

拆分一下地址:

 

https://api.weibo.com/oauth2/authorize?

client_id=1881139527

&

redirect_uri=http%3A%2F%2Fwww.jianshu.com%2Fusers%2Fauth%2Fweibo%2Fcallback

&

response_type=code

&

state=%257B%257D

 

登陆之后

07.oAuth2介绍_第4张图片

点击链接,自动跳转回到简书的页面

07.oAuth2介绍_第5张图片

 

我们把上面的参数

redirect_uri=http%3A%2F%2Fwww.jianshu.com%2Fusers%2Fauth%2Fweibo%2Fcallback

复制到解码的网站url解码一下

http://tool.chinaz.com/tools/urlencode.aspx

 

解码的结果:

http://www.jianshu.com/users/auth/weibo/callback

 

07.oAuth2介绍_第6张图片

 

看过这个例子以后 ,再来回答什么是OAuth:做的是一个授权的事情、 而不是认证

 

07.oAuth2介绍_第7张图片

 

我们可以去新浪的开放平台上

 

https://open.weibo.com/wiki/%E6%8E%88%E6%9D%83%E6%9C%BA%E5%88%B6%E8%AF%B4%E6%98%8E

07.oAuth2介绍_第8张图片

 

这里就是吧OAuth2.0讲了一遍

07.oAuth2介绍_第9张图片

第一步是获取用户同意

 

 

阮一峰的博客会讲的更细一些:

 

http://ruanyifeng.com/blog/2014/05/oauth_2_0.html

这里服务器验证通过后会给它一个Authorize Code给跳转url当做参数传回去。然后会被简书拿过来。再去调用微博的开放平台API,调用授权服务器,拿到一个Access Token

 07.oAuth2介绍_第10张图片

access token并不是直接返回的。简书是通过Authorization Code 拿到后,再去调用api获取到最终的 Access Token的值

简化模式:

直接返回了access token

07.oAuth2介绍_第11张图片

我输入的用户名和密码是微博上输入的,。不是在简书上输入的。这样我的账号和密码不会泄露给第三方

 

密码模式

密码模式是直接在简书上输入账号密码就获取到微博的access token了。这种一般是在自己信任的网站上才会去使用

 

 

客户端模式

只需要传client ID

 

你可能感兴趣的:(07.oAuth2介绍)