iOS下单签名串之字典通过key值进行降序排列
来源:互联网 发布:淘宝包店名字 编辑:程序博客网 时间:2024/05/29 09:43
1.下单的时候,用于签名的原始串是一个参数的集合,有时候需要我们进行排序。假如用于签名的字段有,name,age,sex,三个字段。我们可以在下单接口中先定义一个字典,将数据传进来即可。
//我们用于排序的字段NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:@"Danny",@"name",@"12",@"age",@"man",@"sex",nil];
2.逻辑:通过取出字典的所有key值,利用sortedArrayUsingComparator进行排序,通过排序后的key值取value,从而达到排序的目的。
3.&&&上代码啦啦。。。
NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:@"Danny",@"name",@"12",@"age",@"man",@"sex",nil];NSArray *allKeyArray = [dict allKeys];NSArray *afterSortKeyArray = [allKeyArray sortedArrayUsingComparator:^NSComparisonResult(id _Nonnull obj1, id _Nonnull obj2) { NSComparisonResult resuest = [obj2 compare:obj1]; return resuest; }];NSLog(@"afterSortKeyArray:%@",afterSortKeyArray); //通过排列的key值获取valueNSMutableArray *valueArray = [NSMutableArray array]; for (NSString *sortsing in afterSortKeyArray) { NSString *valueString = [dict objectForKey:sortsing]; [valueArray addObject:valueString]; }NSLog(@"valueArray:%@",valueArray);
3.打印log信息:
log:afterSortKeyArray:( sex, name, age) valueArray:( man, Danny, 12)
4.接下来我们就可以进行我们签名参数的排列了,生成signString后可以进行MD5加密。
NSMutableArray *signArray = [NSMutableArray array]; for (int i = 0 ; i < afterSortKeyArray.count; i++) { NSString *keyValue = [NSString stringWithFormat:@"%@=%@",afterSortKeyArray[i],valueArray[i]]; [signArray addObject:keyValue]; }//signString用于签名的原始参数集合NSString *signString = [signArray componentsJoinedByString:@"&"];NSLog(@"signString:%@",signString);打印log:signString:sex=man&name=Danny&age=12
0 0
- iOS下单签名串之字典通过key值进行降序排列
- iOS下单签名串之字典通过key值进行降序排列
- Map按key降序排列
- 两个整数进行降序排列
- python字典分别按照key和value升序或者降序排列--以给定一个含有重复元素的数组list,按照其出现次数大小降序输出
- 通过签名,获取key hashes值
- 将一个链表进行降序排列
- iOS 字典中遍历出的key 如何进行排序
- iOS 对字典的key,value进行排序
- iOS中对字典的key进行排序
- Map按照值降序排列
- 降序排列
- 降序排列
- 005_004 Python 统计值 并按照次数排序 可以通过字典的值对key进行排序
- OJ 系列之 ASCII 降序排列
- 微信支付 进行统一下单 签名错误
- 通过keytool获取key发布版、开发版SHA1,用jarsigner工具进行签名
- 根据订单ID进行升序或降序排列
- CentOS 安装vsftp服务端
- vs 下编译C++错误 c2447
- 一步一步搭建GitHub
- UVa 1630
- BZOJ 2038: [2009国家集训队]小Z的袜子(hose)
- iOS下单签名串之字典通过key值进行降序排列
- nginx rewrite 指令
- 最小木棒问题 dfs+ 减枝
- Java编写文件拷贝
- [珠玑拾遗]之一------通俗易懂解读位向量和Java实现
- CV1——二值图像分析之连通域
- RMAN的一些脚本
- 大数据系列修炼-Scala课程45
- caffe学习笔记