您好,欢迎来到二三四教育网。
搜索
您的当前位置:首页url编码

url编码

来源:二三四教育网

NSString *originalUrl = 
NSCharacterSet *encodeUrlSet = [NSCharacterSet URLQueryAllowedCharacterSet];
NSString *encodeUrl = [originalUrl stringByAddingPercentEncodingWithAllowedCharacters:encodeUrlSet];
NSLog(@"%@", encodeUrl);

编码是对url中的中文和特殊符号进行编码。对url编码其实就是对一些特殊字符进行使用utf8编码.

那么我们平时使用的url都要对那些特殊字符编码呢?

/**
     URLUserAllowedCharacterSet      "#%/:<>?@[\]^`
     
     URLPasswordAllowedCharacterSet  "#%/:<>?@[\]^`{|}
     
     URLHostAllowedCharacterSet      "#%/<>?@\^`{|}
     
     URLPathAllowedCharacterSet      "#%;<>?[\]^`{|}
     
     URLQueryAllowedCharacterSet     "#%<>[\]^`{|}
     
     URLFragmentAllowedCharacterSet  "#%<>[\]^`{|}
     */

我们一般对URLQueryAllowedCharacterSet包含的字符进行编码。就是这些字符出现的url中,都会进行utf8编码的。

当然我们也可以自定义需要编码的字符集,如:

NSString *urlString = 
NSCharacterSet *set = [NSCharacterSet characterSetWithCharactersInString:@"`#^{}\"[]|\\<>"].invertedSet;
NSString *urlStringEncoding = [urlString stringByAddingPercentEncodingWithAllowedCharacters:set];

意思是`#^{}"[]|\<> 这些字符是要编码的。

Copyright © 2019- how234.cn 版权所有 赣ICP备2023008801号-2

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务