signData static method
dynamic
signData(
- Object params,
- dynamic tokenStr
)
Implementation
static signData(Object params, tokenStr) async {
var time = new DateTime.now().millisecondsSinceEpoch;
String token = tokenStr;
Map<String, dynamic> reqData = new Map();
Map<String, dynamic>? paramsObj = new Map();
paramsObj = params as Map<String, dynamic>?;
var arr = [];
//将字典转成数组
paramsObj?.forEach((key, value) => arr.add(key));
//进行签名校验
Map cr = new Map();
cr['token'] = token;
cr['time'] = time.toString();
cr['reqData'] = json.encode(paramsObj);
var array = [];
cr.forEach((key, value) => array.add(key));
array.sort();
var str = '';
for (var i = 0; i < array.length; i++) {
var key = array[i];
var value = cr[key];
str += key + value;
}
reqData["time"] = time;
reqData["token"] = token;
reqData['reqData'] = params;
reqData['sign'] = generateMd5(str);
return reqData;
}