用ASIFormDataRequest请求URl地址,当使用GET传参,参数是普通中文可以用 NSString 的 stringByAddingPercentEscapesUsingEncoding 可以对 url 参数进行编码。但是如果参数中包含特殊符号如 " & ? ! "等等,就不能用这种方法。
包含了特殊符号的可以使用ASIFormDataRequest 的 encodeURL 方法 如下使用;
ASIFormDataRequest* request = [[ASIFormDataRequest alloc] initWithURL:nil];
place_name = [request encodeURL:place_name];
- (NSString*)encodeURL:(NSString *)string
{
NSString *newString = [NSMakeCollectable(CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault, (CFStringRef)string, NULL, CFSTR(":/?#[]@!$ &'()*+,;=\"<>%{}|\\^~`"), CFStringConvertNSStringEncodingToEncoding([self stringEncoding]))) autorelease];
if (newString) {
return newString;
}
return @"";
}