公共參數是指所有接口調用都需要用到的參數,包含公共請求參數和公共返回參數。
公共請求參數
公共請求參數是指每個接口都需要使用到的請求參數。
表 1. 公共請求參數表:
名稱 | 類型 | 是否必須 | 描述 |
Format | String | 否 | 返回值的類型,支持JSON與XML。默認為JSON。 |
Version | String | 是 | API版本號,為日期形式:YYYY-MM-DD,本版本對應的版本號為2018-05-11。 |
AccessKeyId | String | 是 | 阿里云頒發(fā)給用戶的訪問服務所用的密鑰ID。 |
Signature | String | 是 | 簽名結果串。關于簽名的計算方法,請參見簽名機制。 |
SignatureMethod | String | 是 | 簽名方式,目前僅支持HMAC-SHA1。 |
Timestamp | String | 是 | 請求的時間戳,為日期格式。使用UTC時間按照ISO8601標準,格式為YYYY-MM-DDThh:mm:ssZ。 例如,北京時間2013年1月10日20點0分0秒,表示為2013-01-10T12:00:00Z。 |
SignatureVersion | String | 是 | 簽名算法版本,目前的版本是1.0。 |
SignatureNonce | String | 是 | 唯一隨機數,用于防止網絡重放攻擊。 在不同請求間要使用不同的隨機數值。 |
公共返回參數
用戶發(fā)送的每次接口調用請求,無論成功與否,系統(tǒng)都會返回一個唯一識別碼RequestId給用戶。
請求示例
http://sgw.cn-shanghai.aliyuncs.com/
?Format=xml
&Version=2018-05-11
&Signature=Pc5WB8gokVn0xfeu%2FZV%2BiNM1dgI%3D
&SignatureMethod=HMAC-SHA1
&SignatureNonce=15215528852396
&SignatureVersion=1.0
&AccessKeyId=key-test
&OwnerId=12345678
&Timestamp=2014-10-10T12:00:00Z
返回示例
調用API服務后,系統(tǒng)返回的數據采用統(tǒng)一格式,返回2xx的HTTP狀態(tài)碼,表示調用成功;返回4xx或5xx的HTTP狀態(tài)碼,表示調用失敗。調用成功返回的數據格式主要有XML和JSON兩種,外部系統(tǒng)可以在請求時傳入參數來制定返回的數據格式,默認為XML格式。為了便于查看,本文檔中的返回示例做了格式化處理,實際返回結果是沒有進行換行、縮進等處理的。
成功結果
XML格式
<?xml version="1.0" encoding="utf-8"?> <!-結果的根結點--> <接口名稱+Response> <!-返回請求標簽--> <RequestId>4C467B38-3910-447D-87BC-AC049166F216</RequestId> <!-返回結果數據--> </接口名稱+Response>
JSON格式
{ "RequestId":"4C467B38-3910-447D-87BC-AC049166F216", /*返回結果數據*/ }
錯誤結果
調用接口出錯后,系統(tǒng)將不會返回結果數據。您可以根據客戶端錯誤碼來定位錯誤原因。
當調用出錯時,HTTP請求會返回一個4xx或5xx的HTTP狀態(tài)碼。返回的消息體中是具體的錯誤代碼及錯誤信息,還包含一個全局唯一的請求ID(RequestId)和一個您該次請求訪問的站點ID(HostId)。若無法在調用方定位錯誤原因,請聯(lián)系阿里云客服人員,并提供該HostId和RequestId,以便我們能盡快幫您解決問題。
XML格式
<?xml version="1.0" encoding="UTF-8"?> <Error> <RequestId>8906582E-6722-409A-A6C4-0E7863B733A5</RequestId> <HostId>sgw.cn-shanghai.aliyuncs.com</HostId> <Code>GatewayInOperation</Code> <Message>The gateway is processing requests . Try again later.</Message> </Error>
JSON格式
{ "RequestId": "7463B73D-35CC-4D19-A010-6B8D65D242EF", "HostId": "sgw.cn-shanghai.aliyuncs.com", "Code": "GatewayInOperation", "Message": "The gateway is processing requests . Try again later." }