一,token說明
token的意思是“令牌”,是服務端生成的一串字符串,作為客戶端進行請求的一個標識。當用戶第一次登錄后,服務器生成一個token並將此token返回給客戶端,以后客戶端只需帶上這個token前來請求數據即可,無需再次帶上用戶名和密碼。
簡單token的組成;uid(用戶唯一的身份標識)、time(當前時間的時間戳)、sign(簽名,token的前幾位以哈希算法壓縮成的一定長度的十六進制字符串。為防止token泄露)。
二,通過CommonRequest獲取
1,預處理
安裝所需的庫
1 pip install aliyun-python-sdk-core==2.13.3 # 安裝阿里雲SDK核心庫
2,獲取阿里雲賬戶中的特定ID
<您的AccessKey Id>
<您的AccessKey Secret>
圖1 accesskeys所在頁面
圖2 AccessKey ID & Secret
備注:在這里你已經提前知道AccessKey ID和 AccessKey Secret的值
3,通過調用庫函數獲取實時更新的token值
1 # -*- coding: utf8 -*- 2 from aliyunsdkcore.client import AcsClient 3 from aliyunsdkcore.request import CommonRequest 4 # 創建AcsClient實例 5 client = AcsClient("<您的AccessKey Id>","<您的AccessKey Secret>", "cn-shanghai") 6 7 # 創建request,並設置參數 8 request = CommonRequest() 9 request.set_method('POST') 10 request.set_domain('nls-meta.cn-shanghai.aliyuncs.com') 11 request.set_version('2019-02-28') 12 request.set_action_name('CreateToken') 13 response = client.do_action_with_exception(request) 14 print(response)
輸出樣例:
1 b'{ 2 3 "NlsRequestId":"5fdf964de5f6406da981dc001a18da0d", 4 "RequestId":"66654590-FCAB-4A58-8799-6444E36A6566", 5 "ErrMsg":"", 6 "Token": 7 {"ExpireTime":1558173907, 8 "Id":"4429326e948245a7aee32eeb55c347a9", 9 "UserId":"1491153441675107"} 10 11 }'
其中‘Token’中的Id即為所求的token值
三,參考鏈接
獲取Token(阿里雲官方文檔) https://help.aliyun.com/document_detail/72153.html?spm=a2c4g.11186623.2.29.22555275cuc2Ne#h2--commonrequest-5