IIRC, слэши должны правильно интерпретироваться, когда они находятся в части запроса URL-адреса. Вы проверяли, работает ли он без закодированных слешей? В противном случае сделайте что-то вроде:
if ([args isKindOfClass:[NSDictionary class]]) {
for (NSString *key in [args allKeys]) {
NSString *value = [(NSString*)CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault, (CFStringRef)[args objectForKey:key], NULL, CFSTR("/?&:=#"), kCFStringEncodingUTF8) autorelease];
[url appendString:[NSString stringWithFormat:@"&%@=%@", key, value]];
[value release];
}
}
return url;
Обратите внимание на значение 4-го аргумента для CFURLCreateStringByAddingPercentEscapes.