概述
项目中需要加载URL展示“隐私声明”。在通过URL.init(string: urlStr)
后,发现返回nil
,URL
初始化失败
分析
url中如果出现一些特殊符号,需要转换成UNICODE的十六进制表示,以%开始,例如以下几个为url保留字符,如果url中出现了该字符需要进行转义
- 空格:以%20表示
-
+
:以%2B表示 -
/
:%2F -
?
:%3F -
%
:%25 -
#
:%23 -
&
:%26 -
=
:%3D
解决方案
经过观察,发现公司给定的URL中出现了空格和é
等特殊字符,因此将空格用%20
代替,将é
用%C3%A9
代替,成功解决问题
网友评论