UTF8 +的标准是逃避我们的国际网址吗?

时间:2012-02-02 15:49:10

标签: http url unicode utf-8 character-encoding

我发现许多网站(亚马逊,维基百科等)在其网址中使用UTF8编码的,网址转义的unicode,这些网址已经过(至少)Chrome浏览器的预处理。

例如,在编写我们的http标头时,我们会将http://ja.wikipedia.org/wiki /メインページ代表http://ja.wikipedia.org/wiki/%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%9A%E3%83%BC%E3%82%B8,Chrome和Firefox似乎以优雅的方式理解这一点。 (我没有在IE上测试。)

这种行为是否有管制标准?或者它严格来说是事实上的标准?还是完全不标准?

我真的很想看到某些RFC的定义段落的链接。

2 个答案:

答案 0 :(得分:1)

URI standard说:

  

当新的URI方案定义表示文本数据的组件时   由通用字符集[UCS]中的字符组成   首先应根据UTF-8将数据编码为八位字节   字符编码[STD63];然后只有那些没有的八位字节   对应于未保留集中的字符应为百分比 -   编码。

这似乎很明确。

我仍然不确定它何时被批准,或者当前的浏览器支持。

答案 1 :(得分:0)

RFC 3987是处理国际URI / URL的新标准,称为IRI。旧标准RFC 3986不支持Unicode。任何不使用IRI的人都必须想出自己的方式来编码不受支持的字符以满足自己的需要。百分比编码UTF-8八位字节是单向的,但它肯定不是实际使用的唯一方式。