- (NSMutableDictionary *)parseQueryString:(NSString *)query {
NSMutableDictionary *dict = [NSMutableDictionary dictionary];
NSArray *pairs = [query componentsSeparatedByString:@"&"];
for (NSString *pair in pairs) {
NSRange equalSignRange = [pair rangeOfString:@"="];
NSString *key = [[pair substringWithRange:NSMakeRange(0,equalSignRange.location)] stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSString *value = [self decodeFromPercentEscapeString:[pair substringWithRange:NSMakeRange(equalSignRange.location + 1 ,[pair length] - 1 - equalSignRange.location)]];
if (value && ![value isEqualToString:@""]) {
[dict setObject:value forKey:key];
}
}
return dict;
}
例子是: XXX://XXXPAY?payInitiator=WEB&paymentInfoId=mmmmmCFxlfPOvocummmm7b3BUFAUA7qvwDrs0bGpaz-6DMyXAKurq6gKO8D1_gCTVJJfJoCaUFtl64bd_hBEZ0T7A&sign=mmmmmmmQ0GtfhvA8ke6UVLmmmmmaD4kNiggrsnDTWrawBX05k=