`

淘宝开放平台SDK对接

    博客分类:
  • PHP
阅读更多

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

首先得有一个注册的appkey和App Secret
 
该流程分三个步骤: 
第一步:通过用户授权获取授权码Code; 
第二步:用上一步获取的Code和应用密钥(AppSecret)通过Https Post方式换取Token。 
第三步:获取用户Nick或者其他信息
第四步:保存session信息
 
一、获取授权码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/jmdonghao/article/details/54317474

1.首先需要有一个淘宝账户,一般实名认证支付宝之后就可以入住开发者平台。 
2.首先确定自己要对接的接口在哪一个应用下面,因为需要下载对应应用的sdk用来调用。确定好是哪一个应用之后创建相对应的应用。 
这里写图片描述
3.创建好应用之后点击前面的sdk小图标会弹出sdk的下载页面,下载sdk保存到本地。在应用管理界面获取到appkey和appSrecet 
这里写图片描述
4.获取code 
获取code地址: 
response_type = code(必填) client_id = *(创建应用所对应的appkey) redirect_uri(创建应用写的回调地址) 
https://oauth.taobao.com/authorize?response_type=code&client_id=23580296&redirect_uri=http://www.baidu.com 
回调成功之后 
这里写图片描述 
5.获取access_token 
第一种通过代码获取

import java.io.IOException;
    import java.util.HashMap;
    import java.util.Map;
    import com.taobao.api.internal.util.WebUtils; //引用top sdk
     public class Access {
        public static void main(String[] args) {
          String url="https://oauth.taobao.com/token";
          Map<String,String> props=new HashMap<String,String>();
          props.put("grant_type","authorization_code");
    /*测试时,需把test参数换成自己应用对应的值*/
          props.put("code","F8qjHTLNqsDrmBAvWJFoVTID66409");
          props.put("client_id","23580296");
          props.put("client_secret","56bd3eef5b57bc793b1ca862c0655472");
          props.put("redirect_uri","http://www.baidu.com");
          props.put("view","web");
          String s="";
          try{s=WebUtils.doPost(url, props, 30000, 30000);
          System.out.println(s);
          }catch(IOException e){
              e.printStackTrace();}
        } }

回示例:

{ 
“taobao_user_nick”: “%E4%B8%AD%E5%9B%BD%E9%80%9F%E5%B0%94%E7%89%A9%E6%B5%81”, 
“re_expires_in”: 0, 
“expires_in”: 86400, 
“expire_time”: 1482909750088, 
“r1_expires_in”: 1800, 
“w2_valid”: 1482823350088, 
“w2_expires_in”: 0, 
“taobao_user_id”: “1065192055”, 
“w1_expires_in”: 1800, 
“r1_valid”: 1482825150088, 
“r2_valid”: 1482823350088, 
“w1_valid”: 1482825150088, 
“r2_expires_in”: 0, 
“token_type”: “Bearer”, 
“refresh_token”: “6200905426610ZZ4db9b00010469dba88bac4b493d2ca8b1065192055”, 
“refresh_token_valid_time”: 1482823350088, 
“access_token”: “6200b052e5b48ZZ0669262fb573a0c47a7bf0aa708639a01065192055” 
}

第二种通过工具获取,找到自己需要调用的api,然后点击上面的session获取工具,输入appkey然后登陆之后就可以按照引导获取了 
这里写图片描述

第一次对接淘宝平台,还有很多地方写的不清楚,望见谅。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics