# 協議架構.
1. 傳輸采用HTTP協議。
2. 使用POST方法將請求發送到接口地址,經服務端處理后,將請求結果返回。
3. 傳輸數據采用UTF-8編碼。
4. 用POST方式提交參數,不要使用url參數,中文無需url編碼。
# 調用憑證
申請開通接口權限后,由平臺提供:
| 字段 | 字段值 | 字段描述 |
|-----------|-------|----------|
| base_url | 暫無 | 請求接口URL |
| app_id | 暫無 | 應用編號 |
| secret /或者key | 暫無 | 接口調用密鑰 |
# 接口約定
每次請求需傳入以下公共參數:
| 參數名稱 | 參數類型 | 是否必須 | 參數描述 |
| --- | --- | --- | --- |
| app\_id | int | 是 | 賬號編號,有平臺提供 |
| timestamp | int | 是 | 當前時間戳(單位:秒) |
| sign | string | 是 | 簽名 |
# 簽名計算方式
為了防止請求被偽造、篡改,每一次接口請求都需傳入sign(簽名),sign根據本次請求參數與key(密鑰)按順序排列后進行md5計算獲得。
sign生成規則:`md5( 參數1名稱 + 參數1值 + 參數2名稱 + 參數2值...+key)`
+表示字符串連接運算,參數按照參數名的字典升序排列,**md5加密后轉為32位小寫格式**。
舉例:某接口傳入參數為name、gender傳入值分別為sun、1;那么sign值為:
7e5ed42c378bccb6b93d9729e1d4302b
~~~
app_id=1
key=12345678901234567890123456789012
~~~
~~~
md5(app_id1gender1namesuntimestamp172334447212345678901234567890123456789012)
~~~
**注意:接入接口時不要將key值通過網絡明文傳輸,請妥善保管,以免泄漏造成損失。**
# API通用返回格式
~~~
{
code: 0,
message: "請求成功",
data: {
...
}
}
~~~
code為服務器處理結果狀態碼,0為成功,500為異常,其它為失敗,可參考-狀態碼列表,data為與本次請求相關的業務數據