post参数 / soap协议传输参数,特殊符号需要转义

项目后台使用的是古老的soap协议,最近使用图文编辑器生成HTML字符串,传给后台时,一添加图片就直接报错

Error Domain=NetWebServiceRequestErrorDomain Code=400 "HTTP/1.1 400 Bad Request" UserInfo={NSLocalizedDescription=HTTP/1.1 400 Bad Request

打印HTML字符串,通过网页调取接口,可以上传,安卓端也没问题,最后发现只有上传图片的时候才出现问题,于是查看图片的字符串

![]( http://121.42.156.151:92/FileGain.aspx?fi=17032510210813698&it=3)

发现其中存在 “ & ” 特殊字符
于是考虑是否需要转义,果然是这个问题
附上转义代码:

//转码
    NSString *tuwen = CFBridgingRelease(CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault, (CFStringRef)wenzi, nil, CFSTR(":/?#[]@!$&’()*+,;="), kCFStringEncodingUTF8));

ps: 此处根据项目需求,选择性转义 :/?#[]@!$&’()+,;=* 这些特殊字符

你可能感兴趣的:(post参数 / soap协议传输参数,特殊符号需要转义)