URL编码简介

网站的URL也称为“网站地址”,是某人为了访问特定网站而进入网络浏览器的内容。 当您通过URL传递信息时,您需要确保它只使用特定的允许字符。 这些允许的字符包括字母字符,数字和一些在URL字符串中具有含义的特殊字符。 任何需要添加到URL的其他字符都应该进行编码,以便在浏览器旅行期间不会导致出现问题,以找到所需的页面和资源。

编码一个URL

URL字符串中最常用的编码字符是<空格>字符。 只要您在网址中看到加号(+),就会看到此角色。 这代表空间特征。 加号用作表示URL中空间的特殊字符。 您将看到的最常见方式是在包含主题的mailto链接中。 如果你想让主题有空格,你可以将它们编码为加号:

邮寄地址:邮件主题=这是+我+主题

这一段编码文本会传送一个“这是我的主题”的主题。 编码中的“+”字符在浏览器中呈现时将替换为实际的

要编码一个URL,你只需要用他们的编码字符串替换特殊字符。 这几乎总是以%字符开始。

编码一个URL

严格地说,您应该始终对网址中找到的任何特殊字符进行编码。 一个重要的注意事项是,如果您对所有这些谈话或编码感到有点恐惧,那么除了使用表单数据之外,您通常不会在正常情况之外的URL中找到任何特殊字符。

大多数URL使用总是允许的简单字符,因此根本不需要编码。

如果使用GET方法将数据提交给CGI脚本,则应该在数据通过URL发送时对其进行编码。 例如,如果您正在撰写链接以宣传RSS提要 ,则需要对您的网址进行编码以添加到您要宣传的网址中。

什么应该被编码?

任何不是字母字符,数字或在正常情况下使用的特殊字符都需要在页面中进行编码。 以下是可以在网址及其编码中找到的常用字符表格。

保留字符URL编码

字符 URL中的用途 编码
单独的协议(http)来自地址 %3B
/ 单独的域和目录 %2F
单独的锚点 %23
独立查询字符串 %3F
单独的查询元素 %24
@ 分隔域名的用户名和密码 %40
表示编码字符 %25
+ 表示空间 %2B
<空格> 不推荐在URL中使用 %20或+

请注意,这些编码示例与使用HTML特殊字符查找的示例不同。 例如,如果您需要用&符号(&)字符对网址进行编码,则可以使用%24,即上表中显示的内容。 如果您正在编写HTML,并且想要为文本添加&符号,则无法使用%24。 相反,你可以使用“&amp;”; 或“&#38;”,这两者都会在呈现时在HTML页面中写出&。 这看起来可能让人困惑,但它基本上是页面本身(作为HTML代码的一部分)上显示的文本与URL字符串之间的区别,URL字符串是一个单独的实体,因此受到不同规则的约束。

“&”角色以及许多其他角色都可以出现在每个角色中,这一点不应该让您将两者之间的差异混淆。

Jennifer Krynin的原创文章。 由Jeremy Girard编辑。