ios html特殊字符转义字符,iOS URL 字符转义问题
图片发自简书App
前段时间,做马甲包相关的知识,把H5资源下载到本地,然后从本地解析js,渲染并加载css和图片等。再此过程中,遇到了URL字符串自动转义的问题,记录一下~
项目需要从本地加载的Url链接是
/var/mobile/Containers/Data/Application/22438350-8530-4B0B-BFDD-FBCE7A9F873B/Documents/components/dist/main.html#/main
但是调用
NSURL * URL = [NSURL fileURLWithPath:indexHtmlPath];
打印URL.absoluteString却变成了
file://var/mobile/Containers/Data/Application/22438350-8530-4B0B-BFDD-FBCE7A9F873B/Documents/components/dist/main.html%23/main
什么鬼,我的 # 被%23吃了,快还我#。我找来了“谷歌”和“百度”两位大神来赶走%23,结果呐,铩羽而归~
原来,webView的Url链接中的特殊字符串在未经我允许的情况下,摇身一变,我不认识了。QAQ~
URL编码和ASCII码值间的转换:
+ URL 中+号表示空格 %2B
空格 URL中的空格可以用+号或者编码 %20
/ 分隔目录和子目录 %2F
? 分隔实际的URL和参数 %3F
% 指定特殊字符 %25
# 表示书签 %23
& URL 中指定的参数间的分隔符 %26
= URL 中指定参数的值 %3D
那既然这样,就想着解码吧,但是试了好几种方法,都无法阻挡Url转义,也是醉了~
做为一名打不死的小强,岂能就此放弃,解码走不通,能不能换一种方法呐?!结果,还真被我想出来了~
对比两个Url链接,除了# 被%23替换之外,链接还加了前缀file:/,我们能不能直接在初始化之前,自己拼接Url加上前缀,接着用我们常见的Url初始化方法,来初始化呐,答案是肯定de
indexHtmlPath = [NSString stringWithFormat:@"file:/%@", indexHtmlPath];
NSURL * URL = [NSURL URLWithString: indexHtmlPath];
如果你有更好的解决方法,欢迎留言~
ios html特殊字符转义字符,iOS URL 字符转义问题相关推荐
- html的 转义,html字符转义
javascript 字符转义汇总 在开发中经常遇到需要字符转义的,我将一一把遇到的转义列举出来 1.今天中午做项目的时候遇到一个字符串链接的问题,需要链接的的是一个函数的参数 时间字符串:" ...
- html url 转义字符,html url 转义字符
在日常工作写模板的时候最长遇到的问题就是xss和字符转义 HTML 字符转义 html是一种类xml,xml有自己的格式 xxxxxxxx 在模板中做字符转义的目标就是不打乱xml这种格式,具体的做法 ...
- 解决alert在ios版微信中显示url的问题(重写alert)
为了解决alert在ios版微信中显示url的问题 window.alert = function(name){var iframe = document.createElement("IF ...
- ios html 全选文本框,【前端】IOS input输入框按删除键删除字符,删除最后一个字符时,概率性出现光标前面多余一个字符...
IOS input输入框按删除键删除字符,删除最后一个字符时,概率性出现光标前面多余一个字符,并且placeholder文字也能显示出来 回答 删除最后一个字符时延迟一毫秒 我用了vue,input[ ...
- IOS 正则表达式匹配文本中URL位置并获取URL所在位置(解决连接中文问题)
IOS 正则表达式匹配文本中URL位置并获取URL所在位置(解决连接中文问题) 参考文章: (1)IOS 正则表达式匹配文本中URL位置并获取URL所在位置(解决连接中文问题) (2)https:// ...
- PostMan发送请求参数带有路径特殊字符会返回400错误(与URL字符及URL编码值有关)
目录 一.请求参数中携带URL字符返回400错误 二. 请求参数中携带URL字符返回400错误原因 三.URL字符及对应的URL编码值列表 四.请求参数中携带URL字符转成URL编码值 一.请求参数中 ...
- iOS 字符串截取、iOS 字符串替换、iOS 字符串分隔、iOS 字符串匹配、截取字符串、匹配字符串、分隔字符串
iOS之字符串截取.iOS 字符串替换.iOS字符串分隔.iOS之字符串匹配.截取字符串.匹配字符串.分隔字符串 1.iOS 字符串截取 //1.ios截取字符串NSString *string =@ ...
- 【C#进阶二】C#中的正则表达式知识总结(字符转义/字符类/ 定位点/ 分组构造 /数量词/反向引用构造/替换构造/替代/正则表达式选项)(理论篇)
文章目录 0. 正则表达式网站推荐 1.字符转义 2.字符类 3. 定位点 4. 分组构造 5.数量词 6.反向引用构造 7.替换构造 8.替代 9.正则表达式选项 正则表达式是对字符串操作的一种逻辑 ...
- HTML转义字符表,JavaScript常用转义符
[b]HTML转义字符表,JavaScript常用转义符[/b]HTML中<,>,&等有特殊含义(<,>,用于链接签,&用于转义) 收藏着,自己以后可能有用得着 ...
最新文章
- 华为鸿蒙系统初探之HUAWEI DevEco Studio Hello World
- characteriscation in English debate
- Python中运算符 is 和 == 的区别
- just函数 python_在python里写Monad
- tracert路由检测命令使用方法
- 电话光端机的电话接口类型有哪些?
- Linux内核的启动过程分析
- javascript for in,for each,for循环遍历区别
- 如何用jar命令对java工程进行打包
- 超级玛丽游戏 C++简单实现
- 工程安全cso千人千面计算机,千人一面变为千人千面 自适应教育助力因材施教...
- 为何你写的文案打不动不了人心?
- Google 要用 Flutter 一统移动、桌面开发江湖?
- 设置UITableView的separatorInset值为UIEdgeInsetsZero,分隔线不最左端显示的问题
- android如何获取电视的存储空间,Android TV (二)(处理电视硬件)
- error parsing xml:unbound prefix
- 男子因惧内欲退还iPad 2苹果免费赠送
- 基于RGB-D图像的语义场景补全研究进展综述
- KnockoutJs dynamic Binding
- Java静态代理和动态代理(代理模式)详解