天貓精靈對接3 (具體代碼實現)


1.有什么協議問題,請先看對接文檔

2.基礎流程請看上一篇文章,已經講得比較詳細了。

3.代碼寫得渣,有什么可以優化的地方麻煩提一下,噴我也沒啥用。

運行(調試)流程:

本機測試(內網模擬授權流程):

編譯代碼,檢查配置文件,將 web.config (里面也有備注說明)中的 serverUrl 換成你的IP地址(內網測試),如我本地的的 http://192.168.1.96:8030/

<add key="serverUrl" value="http://192.168.1.96:8030/" /><!--你發布到IIS上的地址,域名-->

啟動IIS,訪問你的地址

模擬地址為:http://ip:port/Web/Home/IndexLogin?client_id=myTest&response_type=code&redirect_uri=http://www.baidu.com&state=0

我本機訪問為:

http://192.168.1.96:8030/Web/Home/IndexLogin?client_id=myTest&response_type=code&redirect_uri=http://www.baidu.com&state=0

 

賬號密碼隨便輸(代碼里默認為 true 不做校驗,具體自行處理下)

如果配置沒問題,將跳轉到如下地址:

跳轉地址:

https://www.baidu.com/?code=39a25d4c38dc4113b0f9fe1afb8049d96e02cd98cd25417385953ad402c6d5bd

把跳轉得到的code 復制出來。

39a25d4c38dc4113b0f9fe1afb8049d96e02cd98cd25417385953ad402c6d5bd

打開 POSTMAN (如果沒有,自己找一個其他的代替)。

選擇 Post

url填寫為:http://192.168.1.96:8030/Web/Home/TestToken

Body:選擇form-data,

填入以下的 key 和 value

key value
grant_type authorization_code
client_id myTest
client_secret myTest
code 39a25d4c38dc4113b0f9fe1afb8049d96e02cd98cd25417385953ad402c6d5bd(也就是上面得到的code)
redirect_uri http://www.baidu.com
refresh_token  

如下圖:

{
    "access_token": "zP8ct6ghd68Apt1X671PM3AHpB21pP223EcxsEbVZWIhq1t4IrLXblR2sNh_Zr3h2oiUKbb2sICVxXBrEtGdVjo2f2rvp-wO91mO69xCQu3jUGmbNYmdigHbv0ZUL9F2x9LZUOraOOWKitGGJcnCkFsVRcXe6Nq-dDq1FU-HHZOgwYA0Lo0WmqvkvkRbVdRbzSXymZ9myyThpDaAJnWGDPuzYcCbTDuoMCPYHnVrrpA",
    "refresh_token": "e9314adc61bf4db8b23e0e57bd739c9b3c8b4e79ec3a452ab075052a5cda40a6",
    "expires_in": 86900
}

 

正常響應如圖中所示,這樣,授權就完成了。

 

refreshToken 的模擬操作和上面的操作是類似的。

將上方得到的 refresh_token 復制出來

打一個新的 PostMan 窗口,輸入如下參數:

 

key value
grant_type refresh_token
client_id myTest
client_secret myTest
code  
redirect_uri http://www.baidu.com
refresh_token e9314adc61bf4db8b23e0e57bd739c9b3c8b4e79ec3a452ab075052a5cda40a6(也就是上面得到的 refresh_token )

 

點擊 Send,可看到結果:

 

天貓平台的設置可以參考如下圖:

 

 

 

O了,授權流程完成,代碼里也有天貓的入口之類的判斷,估計你們也不會用到的,就直接不講了。也有一小部分小度對接的代碼,雖然也刪得差不多了。

 

 最重要的:

源碼地址:下載地址

 


免責聲明!

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



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