例如:
当在 Firefox 中输入 παιχνιδια.com 时,它会自动转换为 xn--kxadblxczv9d.com
请建议一种进行此类转换的工具。
最简单的方法之一就是这个。同时转换和检查可用性。
例如:
当在 Firefox 中输入 παιχνιδια.com 时,它会自动转换为 xn--kxadblxczv9d.com
请建议一种进行此类转换的工具。
最简单的方法之一就是这个。同时转换和检查可用性。
如果您想在浏览器中执行此操作,请将此答案中的代码保存为puny.js并将下面的代码保存为puny.html,然后在浏览器中加载文件。
<html>
<title>Punyconverter</title>
<script type="text/javascript" src="puny.js"></script>
<style type="text/css">
input {width:300px;}
label {width:100px; display:inline-block;}
</style>
<script type="text/javascript">
onload = function( ) {
var ASCII = document.getElementById("ASCII");
var Unicode = document.getElementById("Unicode");
var Input = document.getElementById("Input");
Input.onkeyup=function(){
ASCII.value = punycode.ToASCII( this.value);
Unicode.value = punycode.ToUnicode( this.value);
}
};
</script>
</html>
<body>
<h1>Convert puny coded IDN</h1>
<div><label for="Input">Input</label><input id="Input" type="text"></div>
<div><label for="ASCII">ASCII</label><input id="ASCII" type="text" readonly="readonly"></div>
<div><label for="Unicode">Unicode</label><input id="Unicode" type="text" readonly="readonly"></div>
</body>
您可以使用 Python对 IDNA 进行编码和解码:
>>> print u'παιχνιδια'.encode('idna')
xn--mxaaitabzv9d
>>> print 'xn--mxaaitabzv9d'.decode('idna')
παιχνιδια
Perl 中的标准模块在 Apache 中也可以使用 URI 模块来完成。
use URI;
#insert sitename in next:
$sitename = "..";
my $uri = URI->new( $sitename,'http');
if ($uri->scheme) { print $uri; }