讓您全面了解并上手億速云產品
常見入門級使用教程
對外 API 開發文檔中心
您歷史提交的工單
您的每一條意見,我們都嚴謹處理
您的每一條建議,我們都認真對待
在第一次使用云 API 之前,請前往 AccessKey管理頁面 申請安全憑證。 安全憑證包括 accessId 和 accessSecret
有了安全憑證 accessId 和 accessSecret 后,就可以生成簽名串了。以下是生成簽名串的詳細過程:
假設用戶的 accessId 和 accessSecret 分別是:
accessId: abcdefghijklmnop
accessSecret: 098a6bcd4621d383cade4e232627b4f9
注意:這里只是示例,請根據用戶實際申請的 accessId 和 accessSecret 進行后續操作!
以發送短信請求為例,當用戶調用這一接口時,其請求參數可能如下:
名稱 | 類型 | 是否必填 | 說明 |
---|---|---|---|
accessId | string | 是 | 密鑰 ID |
timestamp | string | 是 | 當前時間戳 |
nonce | int | 是 | 隨機正整數 |
phone | string | 是 | 手機號碼,多個手機號碼用逗號(,)分隔 |
templateCode | string | 是 | 模板編號 |
templateVars | string | 否 | 模板變量 |
首先對所有請求參數按參數名的字典序( ASCII 碼)升序排序。用戶可以借助編程語言中的相關排序函數來實現這一功能,如 PHP 中的 ksort 函數。上述示例參數的排序結果如下:
{
'accessId' : 'abcdefghijklmnop',
'timestamp' : '1577774759',
'nonce' : 15486598,
'phone': '13800000000',
'templateCode': '100001',
'templateVars': '{"code":12345}',
}
使用其它程序設計語言開發時,可對上面示例中的參數進行排序,得到的結果一致即可。
示例的拼接結果為:
accessId=abcdefghijklmnop&nonce=48693365&phone=18306689868&templateCode=100001&templateVars={"code":123123}×tamp=1577412873
此步驟生成簽名串。 首先使用 HMAC-SHA1 算法對上一步中獲得的簽名原文字符串進行簽名,然后將生成的簽名串使用 Base64 進行編碼,即可獲得最終的簽名串。
具體代碼如下,以 PHP 語言為例
$accessSecret = '098a6bcd4621d383cade4e232627b4f9';
$signStr = 'accessId=abcdefghijklmnop&nonce=48693365&phone=18306689868&templateCode=100001&templateVars={"code":123123}×tamp=1577412873';
$signature = base64_encode(hash_hmac("sha1", $signStr, $accessSecret, true));
echo $signature;
最終得到的簽名串為:
BWo2qLPno5s8ZT3jRAxeDFjNYqk=
Copyright ? Yisu Cloud Ltd. All Rights Reserved. 2018 版權所有
廣州億速云計算有限公司 粵ICP備17096448號-1 粵公網安備 44010402001142號 增值電信業務經營許可證編號:B1-20181529