1

我一直在研究国际化资源标识符,但有一件事困扰着我。

我的理解是,对于域名中的每个标签(xyzzy.plugh.com具有三个标签,xyzzyplughcom,执行以下过程以将其转换为 ASCII 表示,以便所有旧版软件都可以对其进行处理:

  • 如果它仅由 ASCII 字符组成,则按原样复制。
  • 否则:
    • 首先我们输出xn--后跟所有 ASCII 字符(跳过非 ASCII)。
    • 然后,如果最后一个字符不是-,我们输出-以将 ASCII 与非 ASCII 分开。
    • 最后,我们使用 punycode 对每个非 ASCII 字符进行编码,使它们看起来是 ASCII。

那么我的问题是:我们如何区分以下两个 Unicode URI?

http://aa☃.net/
http://☃aa.net/

在我看来,这两个都将编码为:

http://xn--aa-nfh.net/

仅仅是因为整个标签的测序信息已经丢失。

还是我在规范中遗漏了什么?

4

1 回答 1

2
于 2015-06-11T12:58:59.077 回答