NSString进行urlencode编码

时间:2021-10-19 08:07:07

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

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

(CFStringRef)[[HJUserManager defaultManager] getToken],

NULL,

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

kCFStringEncodingUTF8));

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