网站的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编辑。