1: // 给所有的Key排序
NSArray *keys = [[parDic allKeys] sortedArrayUsingComparator:^NSComparisonResult(id obj1, id obj2) {
return [(NSString *)obj1 compare:obj2];
}];
NSMutableString *parame = [NSMutableString string];
// 拼接
for(NSUInteger i=0; i<[keys count]; i++) {
NSString *key = [keys objectAtIndex:i];
if ([key isEqualToString:TJJ_TAG_MARKET]) {
continue;
}
[parame appendFormat:@"%@=%@&",key,[parDic objectForKey:key]];
NSArray *keys = [[parDic allKeys] sortedArrayUsingComparator:^NSComparisonResult(id obj1, id obj2) {
return [(NSString *)obj1 compare:obj2];
}];
NSMutableString *parame = [NSMutableString string];
// 拼接
for(NSUInteger i=0; i<[keys count]; i++) {
NSString *key = [keys objectAtIndex:i];
if ([key isEqualToString:TJJ_TAG_MARKET]) {
continue;
}
[parame appendFormat:@"%@=%@&",key,[parDic objectForKey:key]];
}
2:sign 是给所有的key,value 拼接后,加密,就是sign
3://url编码
- (NSString*)urlEncodedString:(NSString *)string
{
NSString * encodedString = (__bridge_transfer NSString*) CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault, (__bridge CFStringRef)string, NULL, (__bridge CFStringRef)@"!*'();:@&=+$,/?%#[]", kCFStringEncodingUTF8 );
if (encodedString) {
return encodedString;
}
return @"";
}