HTTP请求特殊字符处理。

在请求体中如果出现如:/?#[]@!$’()*+,;的特殊字符,通信会直接失败,用下面的万能宏就能解决。

需要注意的是如果你的字符串转过一次码 再用下边的这个转码还是失败哦,只能转一次;

并且这个宏是请求体是字符串的时候转的,自己体会吧。

#define NSUTF8String(v) ((NSString *)CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,(CFStringRef)(v),  NULL, CFSTR(":/?#[]@!$’()*+,;"), kCFStringEncodingUTF8))

你可能感兴趣的:(HTTP请求特殊字符处理。)