1

我已阅读问题Why do you need to encode URLs

但我仍然感到困惑:

  • 为什么 W3C 只允许 URL 中可以存在更多字符?所以它可以避免编码?
  • 为什么存在解码
4

1 回答 1

1

字符的 URL 表示可能与代码中的字符不同。换句话说,有一个特定的语法定义了 URL 的组装方式。需要对用于形成 URL 的特殊字符进行编码,以免它们导致意外结果。

现在更具体地回答您的问题:

  1. 它们可能已经允许某些您正在考虑的字符,但是这些字符(例如,&、?)被赋予了特殊含义,以便以某种方式发挥作用。因此,它们不能在不同的上下文中使用。从您发布的问题的链接来看,它在空格字符的示例中也是如此,因为它会在使用中引入问题,所以不支持它。

  2. 解码对于解码 URL 以在 URL 被编码以用于应用程序中的操作/其他功能之前获取 URL 的字符串表示非常有用。

于 2013-06-24T01:56:33.687 回答