需要对 HTML 链接中的字符进行编码吗?

发布于 2024-10-03 09:49:01 字数 288 浏览 2 评论 0 原文

我应该对 url 中包含的字符进行编码吗?

示例:

<a href="http://google.com?topicId=1&pageId=1">Some link using &</a>

<a href="http://google.com?topicId=1&amp;pageId=1">Some link using &amp;</a>

Should I be encoding characters contained within a url?

Example:

<a href="http://google.com?topicId=1&pageId=1">Some link using &</a>

or

<a href="http://google.com?topicId=1&pageId=1">Some link using &</a>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

脸赞 2024-10-10 09:49:01

是的。

在HTML中(据我所知包括XHTML和HTML5),所有属性值和标签内容应该编码:

作者还应该使用“&”在属性值中,因为 CDATA 属性值中允许字符引用。

Yes.

In HTML (including XHTML and HTML5, as far as I know), all attribute values and tag content should be encoded:

Authors should also use "&" in attribute values since character references are allowed within CDATA attribute values.

温柔戏命师 2024-10-10 09:49:01

Web 编程中有两种不同的编码用于不同的目的,并且很容易混淆。

要显示为 HTML 的文本中的特殊字符需要编码为 HTML 实体。特别是诸如“<”之类的字符它们是 HTML 标记的一部分,但如果对要使用的字符编码有任何疑问,它也可能对其他特殊字符有用。

URL 中的特殊字符需要进行 URL 编码(用 %nn 代码替换)。

如果接收者将 HTML 实体视为 HTML 文本,那么将 HTML 实体放入 URL 中并没有什么坏处;但如果它是程序指令的一部分(例如用于分隔 CGI 查询字符串中的参数的 &),则不应对其进行编码。

There are two different kinds of encoding which are needed for different purposes in web programming, and it is easy to get confused.

Special characters in text which is to be displayed as HTML need to be encoded as HTML entities. This is particularly characters such as '<' which are part of HTML markup, but it may also be useful for other special characters if there is any doubt about the character encoding to be used.

Special characters in a URL need to be URL-encoded (replaced by %nn codes).

There is no harm in putting an HTML entity into a URL if it is going to be treated as HTML text by whatever receives it; but if it is part of an instruction to a program (such as the & used to separate arguments in a CGI query string) you should not encode it.

幻想少年梦 2024-10-10 09:49:01

取决于您的文件的提供和识别方式。

对于 XHTML,是的,而且是必需的。

对于 HTML 来说,不行,这样做也是不正确的。

Depends how your files are being served up and identified.

For XHTML, yes and it's required.

For HTML, no and it's incorrect to do it.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文