【转】js 对象按照键值(不分区大小写)排序,生成签名方法

2021-07-14 19:06

阅读:528

标签:fun   function   签名   creat   type   padleft   关联   请求方法   ret   

客户需求小程序端用js生成签名,我们按照要求一步一步解决,并且将请求方法封装到一个utils.js里:

第一步:对关联数组按照键名做正序排序。

第二步:拼接字符串 

第三步:将拼接的字符串加上私钥

第四步:将以上字符串MD5加密

 

const md5 = require(‘md5.js‘);
var appsecret ="appsecret ";
var App_Key ="App_Key ";

//字母排序:不区分大小写
function sortCharter(a, b) {
if (a.toString().toUpperCase() > b.toString().toUpperCase()) {
return 1;
}
else if (a.toString().toUpperCase() == b.toString().toUpperCase()) {
return 0;
}
else {
return -1;
}
}
 
function objKeySort(obj) {//排序的函数
var newkey = Object.keys(obj).sort(sortCharter);
//先用Object内置类的keys方法获取要排序对象的属性名,再利用Array原型上的sort方法对获取的属性名进行排序,newkey是一个数组
var newObj = {};//创建一个新的对象,用于存放排好序的键值对
for (var i = 0; i 

 

【转】js 对象按照键值(不分区大小写)排序,生成签名方法

标签:fun   function   签名   creat   type   padleft   关联   请求方法   ret   

原文地址:https://www.cnblogs.com/yunspider/p/9537807.html


评论


亲,登录后才可以留言!