以真人度查詢介面為例 (
const apiurl = `
const headers = ;
function getauthstring(ak, sk, path, ip, host) /$/$`;
// 2
let method = 'post';
let canonicaluri = path;
let canonicalquerystring = 'ip=' + ip;
let canonicalheaders = 'host:'+ host;
let canonicalrequest = method + '\n' + canonicaluri + '\n' + canonicalquerystring + '\n' + canonicalheaders;
canonicalrequest = decodeuri(canonicalrequest);
let signedheaders = 'host'; // 可根據header部分確定簽名頭域(signedheaders)。簽名頭域是指簽名演算法中涉及到的http頭域列表。
// 3
let signingkey = crypto
.update(authstringprefix)
.digest()
.tostring('hex');
// 4
let signature = crypto
.createhmac('sha256', signingkey) //你的secret
.update(canonicalrequest)
.digest()
.tostring('hex');
// 5
let authorization = `$/$/$`;
console.log('1', authstringprefix);
console.log('2', canonicalrequest);
console.log('3', signingkey);
console.log('4', signature);
console.log('5', authorization);
return authorization;
}
文件中說headers中的字段都要參與簽名,其實大部分不需要,像本例中只需要host即可
通常返回結果為空時,都是查詢出錯了。錯誤**一般都在返回的headers中,對照文件的錯誤**即可找到錯誤原因。
阿里雲認證簽名生成
呼叫阿里雲介面,需要在headers中新增簽名 x ca signature欄位 以whois查詢介面為例 阿里雲生成認證字串文件 以nodejs為例 const domainname your domain name const apiurl const headers path 除根路徑以外的其...
百度雲推送
主要功能是 推送通知 推送訊息 推送富 特點 1 增強使用者粘性 保持與使用者的溝通,提高使用者活躍率。2 節約成本 省點 省流量。3 穩定 可靠。應用場景 單播訊息推送 1 向特定的終端推送訊息 通過客戶端api,先獲取終端的channel id,再向channel id推送訊息。2 向可定的使用...
百度雲推送
在ios開發中我們開發中往往離不開遠端推送,因為他能夠有提醒客戶自己的存在,且能夠通過訊息提醒來獲取使用者的回頭率。1.框架設計 操作步驟 配置 2.配置證書檔案 使用終端命令 key.p12檔案轉key.pem檔案 openssl pkcs12 nocerts out key.pem inkey....