NSString进行urlencode编码

  今天在项目开发过程中,需要给webView传一个url,但是web端需要我将url中的一个变量进行urlencoding编码。这个主要原因是怕这个参数中存在一些转义字符,ok!这个没有问题,一开始我只是将其进行简单的utf-8编码,丢过去发现报参数错误。后来经过了一阵研究找到了相应的解决办法,代码如下:

 NSString *outputStr = (NSString *)CFBridgingRelease(CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,

                                            (CFStringRef)[[HJUserManager defaultManager] getToken],

                                            NULL,

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

                                            kCFStringEncodingUTF8));

[[HJUserManager defaultManagergetToken]是一个32字符串来表示用户唯一的标志符。通过上面的编码,经过测试是可以的。

原文地址:https://www.cnblogs.com/xishui2011/p/3669830.html