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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容