美文网首页iOS服务器部分程序员iOS学习笔记
iOS开发中URL中不合法字符的转义

iOS开发中URL中不合法字符的转义

作者: 绿豆粥与茶叶蛋 | 来源:发表于2016-11-24 08:54 被阅读240次

    通常我们在拼接网络请求Url的时候,比如请求网络图片,通过get方法请求网络数据,有时会遇到请求失败的问题,于是各种找原因,就是不明白问题出在哪里。我也是遇到了这种问题最后才发现我本来请求接口里有个“+”,而到服务器端反馈给我的信息显示变成了空格“ ”,后来才反应过来,原来是请求之前要对url中的特殊字符进行转义!

    通常用到的URL转义有两种方式:

    方式一:stringByAddingPercentEscapesUsingEncoding(有些特殊的字符不能转义比如“+”)

NSString*encodeUrlStr=[urlStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

    方式二:CFURLCreateStringByAddingPercentEscapes(有一个需要转义的字符集,可以将所有需要转义的字符转义成百分数)

NSString*encodeUrlStr=(__bridge_transfer NSString*)CFURLCreateStringByAddingPercentEscapes(NULL,(__bridge CFStringRef)urlStr,CFSTR("!*'();:@&=+$,/?%#[]"),CFStringConvertNSStringEncodingToEncoding(NSUTF8StringEncoding));

    转义URL一般会用在涉及加密解密的时候,因为正常的字符串加密之后就可能会出现&,+,#等等特殊的符号。

相关文章

  • iOS开发中URL中不合法字符的转义

    通常我们在拼接网络请求Url的时候,比如请求网络图片,通过get方法请求网络数据,有时会遇到请求失败的问题,于...

  • 网址URL中特殊字符转义编码

    网址URL中特殊字符转义编码字符 - URL编码值 URL特殊字符转义,URL中一些字符的特殊含义,基...

  • iOS中URL的解码和转义问题

    ---转自 博客园 歉信君 iOS中URL的解码和转义问题 在iOS开发中,使用NSURLConnection去请...

  • iOS中webView添加参数后不能加载

    在开发过程中,URL通常会带各种参数,如果参数中带有中文或者其他特殊字符,则需要对这个URL字符串进行转义操作: ...

  • iOS之URL中特殊字符转义

    转义字符的原因:### **如果你的表单使用get方法提交,并且提交的参数中有“&”等特殊符的话,如果不做处理,在...

  • spring RestTemplate 天坑

    url中%是特殊的字符,会被转义 %25 。被转义之后的URL不是正确的URL地址,程序会报出错误的400 Bad...

  • URL中特殊字符处理

    URL中含有一些特殊字符可能导致请求结果不正确。 URL字符转义 用其它字符替代吧,或用全角的。 + URL中+号...

  • URL中特殊字符的转义

    地址 转义原因:避免引起歧义 现在URL会使用key=value的形式传参,键值对间使用&分隔,如/s?usern...

  • java知识点杂聚

    1、前端请求后端时候,除了url中params里面+,&,>,<等会转义之外,如果是post请求中也会出现转义字符...

  • url参数中特殊字符转义

    特殊字符转义%%25=%3d+%2b/%2f#%23?%3f空格+

网友评论

    本文标题:iOS开发中URL中不合法字符的转义

    本文链接:https://www.haomeiwen.com/subject/owkbpttx.html