我正在重写我们的一个表单,以便它可以处理国际域名,但在我开始之前,我认为我会测试处理IDN的功能。Coldfusion with Java IDN处理国际域名
我的想法是,如果有人进入一个域名如:http://清华大学.cn我将它作为punycode存储在我的数据库中。考虑到这一点我随后找到了Java的IDN处理程序,并写此位的测试代码:
<cfset strUrl = "http://清华大学.cn" />
<cfoutput>
#strURL#
</cfoutput>
<!--- Create a Java URL. --->
<cfset jUrl = CreateObject("java", "java.net.IDN").toAscii(strUrl) />
<cfoutput>
#jURL#
</cfoutput>
然而,在运行此我得到一个错误:
A prohibited code point was found in the inputhttp://æ ̧...å�žå¤§å¦
这发生在.toAscii
线。我错过了什么?
岂不ASCII事实上禁止这些更高的字符集?没有“toUtf8()”方法吗? –
我不确定你在说什么。你是否建议我在将字符串转换为ASCII之前需要转换字符串? – Jarede
http://stackoverflow.com/questions/1510794/whats-the-proper-technical-term-for-high-ascii-characters – Sharondio