淘宝 OAuth2.0 的登录验证与授权

获取授权码Code应用在要求获取用户信息的时候,首先引导用户(Redirect)到登录授权页面https://oauth.taobao.com/authorize

需要传的参数有


名称
是否必需 描述
response_type Y 此处为web应用,此值固定为code
client_id Y 即创建应用时的Appkey
redirect_uri Y 登录后的回调地址,(注意:此地址必须要与注册应用时的回调地址相匹配,匹配规则是:注域名完全匹配
state N 该参数由应用定义,用户授权后,授权服务器会原封不动将此参数返回。
注: 应用可通过可选参数state来记录用户当前所处的页面位置信息,方便用户登录授权后,页面回调到用户之前所处的位置。

例如: https://oauth.taobao.com/authorize?response_type=code&client_id=12251541&redirect_uri=http://www.xx.org&state=1

[attachment=335]

用户登陆后,显示用户授权页面:
[attachment=336]

此时,用户可以选择“授权”或者“取消”(即不同意授权)。
如果用户同意授权,则跳转到应用的回调地址(redirect_uri),同时,应用获得授权码code
[attachment=337]

如果用户取消授权或者访问出错
[attachment=338]

二、用授权码Code换取Token应用在获取授权码后,发送Https Post到授权服务器,授权服务器验证授权码的合法性和应用的AppSecret,验证通过后授权服务器返回Access Token给应用。



需要传的参数有:

名称
是否必需 描述
grant_type Y 授权类型 authorization_code 或者 refresh_token
code Y 授权请求中的授权码,即第一步获取到的code
redirect_uri Y 登录后的回调地址,(注意:此地址必须要与注册应用时的回调地址相匹配,匹配规则是:注域名完全匹配
client_id Y 客户标识,即appkey
client_secret Y 客户密钥,即appsecret


以下为java代码实现授权:

第一步:
在网站设置登陆入口
  1. <A class="g6" title=会员登录
       href="https://oauth.taobao.com/authorize?client_id=12381144&response_type=code&state=1&redirect_uri=http://localhost:2011/WinTaobao/do.jsp" target="_blank">
       登录


第二步,在redirect网站接受登录后返回的code,并获得access_token

  1.  access_token就相当于sessionKey,后续调用其他接口可以直接使用

 

三、使用淘宝api获取登陆的用户名,将此用户名设置到session中。

http://blog.csdn.net/papalian/article/details/20550795

http://blog.csdn.net/u011510825/article/details/50506564

http://blog.csdn.net/linruonan90/article/details/36926677

http://www.cnblogs.com/soundcode/p/4600294.html

http://www.cnblogs.com/jerrmy/archive/2013/08/20/3268856.html

猜你喜欢

转载自m635674608.iteye.com/blog/2383551