1. 程式人生 > >Js生成接口請求參數簽名加密

Js生成接口請求參數簽名加密

param gpo logs 接口 agen sign blue .com join

js生成接口請求參數簽名加密

定義規則:將所有參數字段按首字母排序, 拼接成key1 = value1 & key2 = value2的格式,再在末尾拼接上key = appSecret, 再做MD5加密生成sign,方法如下:

function getSign(params, kAppKey, kAppSecret) {
    if (typeof params == "string") {
        return paramsStrSort(params);
    } else if (typeof params == "object"
) { var arr = []; for (var i in params) { arr.push((i + "=" + params[i])); } return paramsStrSort(arr.join(("&"))); } } function paramsStrSort(paramsStr) { var url = paramsStr + "&appKey=" + kAppKey; var urlStr =
url.split("&").sort().join("&"); var newUrl = urlStr + '&key=' + kAppSecret; return md5(newUrl); }

調用:

var params = "xid=" + xid + "&type=" + type + "&pageSize=" + pageSize + "&pageNo=" + pageNo;
var
sign = getSign(params, kAppKey, kAppSecret);

或:

var paramsObj = { xid: xid, pageSize: pageSize, type: type, pageNo: pageNo };
var sign = getSign(paramsObj, kAppKey, kAppSecret);

kAppKey,kAppSecret為常量,一般由後端定義好!簽名加密方法依托MD5!

GitHub地址

Js生成接口請求參數簽名加密