淘寶對接(二)


完成淘寶對接(一)的內容后,我們獲得非常重要的App KeyApp Secret。但如果想訪問商戶數據(如商品、訂單等)還需要獲取訪問商戶數據的授權令牌 Access Token。獲取用戶授權的流程可以查看淘寶文檔:用戶授權介紹

 

盡管用戶授權文檔比較詳盡地說明了申請流程。但在這里我還是挑出一些我當時不太明白的步驟進行講解:

1. 獲取授權碼(即在"用戶授權文檔"中提到的code)。以下是文檔提到的獲取流程圖:

1.1 拼接授權url:

https://oauth.taobao.com/authorize?response_type=code&client_id=App Key(App Kep的值)&redirect_uri=http://www.oauth.net/2/(該地址為設置應用時填寫的回調URL而且必須可以被淘寶訪問)&state=1212&view=web。

 

 

1.2 將上面拼接好的url直接復制黏貼到瀏覽器地址欄中(建議使用火狐或Google瀏覽器進行該操作)。回車后轉到下面的授權頁面。

 

1.3 商戶填入用戶名及密碼進行授權。授權完成后頁面會跳轉並在地址欄上獲取到授權碼:code

 

1.4 獲得授權碼后可以使用程序的方式獲取Access Token。以下為C#語言實現的例子。文檔中有其他語言的實現例子  

private void GetAccessToken(string Appkey, string AppSecret, string Code, string redirect_url)
{
  WebUtils webUtils = new WebUtils();
  IDictionary<string, string> pout = new Dictionary<string, string>();
  pout.Add("grant_type", "authorization_code");
  pout.Add("client_id", Appkey的值);
  pout.Add("client_secret", AppSecret的值);
  pout.Add("code", Code剛獲得的授權碼);
  pout.Add("redirect_uri", redirect_url設置應用時填寫的回調URL。1.1步驟的圖);
  string output = webUtils.DoPost("https://oauth.taobao.com/token", pout);
  Console.Write(output);
  WriteFile("Token", output);
  Console.ReadLine();
}

運行后淘寶會返回以下事例信息。里面就包含有Access Token。

 

2. 淘寶安全性

2.1 淘寶有一套安全設定。Access Token是有一個有效時間的。在淘寶文檔:應用授權規則中有詳細描述不同環境下Access Token的有效時間是多長。查看應用管理中自己應用的狀態便可以知道目前應用是處於什么環境。如下圖所示:應用處於正式測試的環境。

 

 

2.2 除Access Token有會有時效性外,淘寶更設有應用安全等級。同樣在淘寶文檔:應用授權規則中有詳細描述

淘寶開放平台對API分為r1,r2,w1,w2四個級別。應用分為0,1,2,3四種安全級別的標記。不同的API級別(r1,r2,w1,w2)根據應用的安全級別(0,1,2,3)有不同的有效時間。這些有效時間在獲取Access Token時候會標識在返回的數據中(以秒為單位)。

更簡單地說有這些有效時間會影響到你是否能調用淘寶API訪問淘寶獲取數據。淘寶文檔:開發平台安全等級說明(淘寶文檔應用授權規則的補充)有詳細說明怎樣查詢什么API屬於哪個級別。提升應用的安全級別能令API的級別提高。也就是使API的有效時間延長。淘寶文檔:開發平台安全等級說明附帶有怎樣提高應用安全等級的指引。

 

2.3 淘寶API有自己所屬的權限組。也就是說API只能在自己所屬的權限組內使用。不能獲取其他權限組的信息。淘寶文檔:應用權限說明有詳細介紹。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM