如果Wikipedia在URL中使用中文字符(和其他Unicode字符)有效,

时间:2019-06-06 12:03:11

标签: url encoding

在Wikipedia上,您会看到以下网址:

首先,我想知道这里正在发生什么,调用了什么编码转换,它在做什么以及为什么这样做。我不明白为什么您不能在URL中仅包含原始本机字符。

第二,我想知道Wikipedia的所作所为是否有效。如果可以在URL中包含这些非ASCII字形,如果不可以,为什么不这样做(可能是因为标准如此规定)。还想知道有多少浏览器支持使用本机字形和此编码内容在URL栏中显示链接,甚至还想知道中文/泰文/本机如何。如果人们使用编码或其他方式,则以他们的语言输入URL(但这可能会使这个问题过于复杂;仍然会是一个有趣的收获)。

我问的原因是因为我想在网页上说几种不同语言的单词/定义,并且我想使url显示该语言中使用的实际单词。因此,在英语中可能是/hello,但是泰语中的等效词/定义是/สวัสดี。对我而言,这比必须将其放入编码事物更有意义。

1 个答案:

答案 0 :(得分:1)

来自https://en.wikipedia.org/wiki/Uniform_Resource_Identifier

  

URI中数据八位字节的字符串表示为字符。 * URI中允许的字符是现代英语字母的小写和大写字母的ASCII字符,阿拉伯数字,连字符,句号,下划线和代字号。[14]任何其他字符表示的八位字节都必须进行百分比编码。

并非所有Unicode字符都可以在URI中使用。仍然可以使用Percent Encoding对不支持的字符进行编码。您可以在URL字段中看到非ASCII字符,因为您的浏览器选择以这种方式显示它们,实际的HTTP请求是使用编码后的字符串完成的。