#import <Foundation/Foundation.h>
@interface NSDictionary (UrlEncoding)
- (NSString *)urlEncodedString;
@end
#import "NSDictionary+UrlEncoding.h"
static NSString *urlEncode(id object) {
NSString *string = [object description];
return [string stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
}
@implementation NSDictionary (UrlEncoding)
- (NSString *)urlEncodedString {
NSMutableArray *parts = [NSMutableArray array];
for (id key in self) {
id value = [self objectForKey: key];
NSString *part = [NSString stringWithFormat: @"%@=%@", urlEncode(key), urlEncode(value)];
[parts addObject: part];
}
return [parts componentsJoinedByString: @"&"];
}
@end
大致含义我就不解释了,就是遍历然后连接,最后连接完了再返回
所以比如你传递的是一个
{@"name":@"ali",@"password":@"alihaiseyao"}
==>> 得到 name=ali&password=alihaiseyao