关于urlencode

这几天做登录的接口是,登录老是失败,提示"系统异常,请请联系管理员",找了半天问题,最后发现POST的请求体中"+"都被替换为" ",简直坑爹啊,在这里提供下解决方法。

//URLEncode
+(NSString*)encodeString:(NSString*)unencodedString{
    
    // CharactersToBeEscaped = @":/?&=;+!@#$()~',*";
    // CharactersToLeaveUnescaped = @"[].";
    
    NSString *encodedString = (NSString *)
    CFBridgingRelease(CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,
                                                              (CFStringRef)unencodedString,
                                                              NULL,
                                                              (CFStringRef)@"+",
                                                              kCFStringEncodingUTF8));
    
    return encodedString;
}
(CFStringRef)@"+"中"+"替换成不想改变的字符。

posted on 2015-06-15 13:46  coderJin  阅读(142)  评论(0编辑  收藏  举报

导航