- 处理非ASCII字符:URLs原则上仅支持ASCII字符集。对于不属于这个字符集的内容,例如中文、阿拉伯文或特殊符号等,使用URL编码可以安全地加以传输。
- 转义保留字符:URL具有特定的格式,其中某些字符(如
/
,?
,&
,=
等)具有特殊意义。如果这些字符用于其它目的(例如作为数据值的一部分),需要通过URL编码来转义,以避免混淆。例如,在GET请求的查询字符串中,&
用于分隔键值对,若键或值实际包含&
,该字符就必须被编码。 - 处理空格和控制字符:URL中直接包含空格(例如,空格通常会被替换为
+
符号或%20
)和控制字符(如换行符)是不允许的,因此这些字符也需要经过编码后才能在URL中使用。