淘宝oauth2.0授权流程

  • Post author:
  • Post category:其他


为何要授权:

淘宝上有很多卖家店铺。现在淘宝应用市场有一个第三方应用。这个应用可以服务卖家店铺。我们知道第三方应用是不能随便读取卖家店铺的信息,比如订单、商品信息。现在卖家可以通过授权限制性的开放信息给第三方应用!

首先isv要在

淘宝开放平台

上申请一个应用,我申请的是百川应用。




如果没申请过应用,


淘宝帐号


登录到开放平台后


点击控制台


在右上角点击


创建应用


即可!

这里填写的


回调地址


就是用来获取授权码的,进而通过授权码获取


access_key





refresh_key


,点击


测试

弹出以下页面


这里点击授权输入手机验证码后将跳到回调地址页面,就是第一张图片填写的回调地址!

在这个回调地址后会跟上授权码code的值!

http://localhost:8080/openapi/taobao/oauth.vm?


code=Q3dEuVloHtME9q67FsQLRtsegtrdso8


&state=

有了授权码后,我们直接调用淘宝的接口,就能获取到访问令牌access_token

以下获取令牌代码参考http://open.taobao.com/



测试时需将test替换为自己申请应用获得的参数!client_id对应appkey client_secret对应appSecret

package com.xudong.top.test;
 /** 
 * 文件名:OpenOauth.java 
 * 
 * 版本信息: v1.0
 * Copyright Corporation 2015 
 * 版权所有 
 * 
 */
	import java.io.IOException;
	import java.util.HashMap;
	import java.util.Map;
	import com.taobao.api.internal.util.WebUtils; //引用top sdk
	public class OpenOauth {
	    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");
	     
	      props.put("code","回调页面生成的code");
	      props.put("client_id","test");
	      props.put("client_secret","test");
	      props.put("redirect_uri","http://localhost:8080/openapi/taobao/oauth.vm");
	      props.put("view","web");
	      String s="";
	      try{s=WebUtils.doPost(url, props, 30000, 30000);
	      System.out.println(s);
	      }catch(IOException e){
	          e.printStackTrace();}
	    } }


换取access_token返回值示例


{





“w2_expires_in”: 0,




“taobao_user_id”: “263685215”,




“taobao_user_nick”: “%E5%95%86%E5%AE%B6%E6%B5%8B%E8%AF%95%E5%B8%90%E5%8F%B752”,




“w1_expires_in”: 1800,




“re_expires_in”: 0,




“r2_expires_in”: 0,




“expires_in”: 86400,




“token_type”: “Bearer”,






refresh_token

“: “6200e1909ca29b04685c49d67f5ZZ3675347c0c6d5abccd263685215”,






access_token

“: “6200819d9366af1383023a19907ZZf9048e4c14fd56333b263685215”,




“r1_expires_in”: 1800




}



版权声明:本文为Trustallandtos原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。