Url 浏览器为什么/如何决定☃;。net转到xn--n3h.net

Url 浏览器为什么/如何决定☃;。net转到xn--n3h.net,url,browser,unicode,punycode,iri,Url,Browser,Unicode,Punycode,Iri,如果我们输入firefox或chrome 我们需要 哪一个是你的镜子 我不明白的是,unicode雪人根据什么规则可以解码成xn--n3h,它看起来不像utf-8或URL编码 我想我在python3中闲逛时发现了一个提示,因为: >>> '☃'.encode('punycode') b'n3h' 但是我仍然不理解xn--部分。域名是如何国际化的,标准是什么,这些东西记录在哪里?它使用一种称为Punycode的编码方案(正如您在Python测试中已经发现的那样),能够以AS

如果我们输入firefox或chrome

我们需要

哪一个是你的镜子

我不明白的是,unicode雪人根据什么规则可以解码成
xn--n3h
,它看起来不像utf-8或URL编码

我想我在python3中闲逛时发现了一个提示,因为:

>>> '☃'.encode('punycode')
b'n3h'

但是我仍然不理解
xn--
部分。域名是如何国际化的,标准是什么,这些东西记录在哪里?

它使用一种称为Punycode的编码方案(正如您在Python测试中已经发现的那样),能够以ASCII格式表示Unicode字符

每个包含Unicode字符的标签(由点分隔,因此
get.me.a.coffee.com
有五个标签)都用Punycode编码,并以字符串
xn--
作为前缀

标签编码首先复制所有ASCII字符,然后附加编码的Unicode字符。Unicode字符始终位于标签中最后一个
-
之后,因此如果需要,可以在ASCII字符之后添加一个字符


更多详细信息,请访问w3网站,以及。有关Punycode如何实际编码标签的详细信息,请参阅。

它使用一种称为Punycode的编码方案(正如您在Python测试中已经发现的那样),能够以仅ASCII格式表示Unicode字符

每个包含Unicode字符的标签(由点分隔,因此
get.me.a.coffee.com
有五个标签)都用Punycode编码,并以字符串
xn--
作为前缀

标签编码首先复制所有ASCII字符,然后附加编码的Unicode字符。Unicode字符始终位于标签中最后一个
-
之后,因此如果需要,可以在ASCII字符之后添加一个字符


更多详细信息,请访问w3网站,以及。有关Punycode如何实际编码标签的详细信息,请参阅。

Ah,good。我现在明白了,
xn--
本身不是一种编码,而是一种规范。对于找到此帖子的Google用户来说,似乎被称为“ACE前缀”。是的,
xn--
是一个ASCII兼容编码(ACE)前缀,用于让DNS系统知道标签的其余部分是punycode编码的。在您的示例中,
n3h
。啊,很好。我现在明白了,
xn--
本身不是一种编码,而是一种规范。对于找到此帖子的Google用户来说,似乎被称为“ACE前缀”。是的,
xn--
是一个ASCII兼容编码(ACE)前缀,用于让DNS系统知道标签的其余部分是punycode编码的。在您的示例中,
n3h