网络请求. url中有中文时

网络相关

网络请求. url中有中文时

网络请求中, 当url中有中文时
// 对url中的中文进行转码(如果已知url中的中文没有进行utf-8转码)
url = [url stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLQueryAllowedCharacterSet]];

如果知道url中的中文既可能已经转码,也可能没有转码,那么使用如下的方法,当不管url中的中文是否已经utf-8转码了,都可以解决将中文字符转为utf-8的问题,且不是二次转码

NSLog(@"原url:%@", url);
    NSString *encodedString = (NSString *)
    CFBridgingRelease(CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,

                                                              (CFStringRef)url,

                                                              (CFStringRef)@"!$&'()*+,-./:;=?@_~%#[]",

                                                              NULL,

                                                              kCFStringEncodingUTF8));
    NSLog(@"转码url:%@",  encodedString);

摘自:

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容