使用Java IDN处理国际域的Coldfusion

时间:2012-05-10 14:57:27

标签: java coldfusion internationalization coldfusion-9 idn

我正在重写我们的一个表单以便它可以处理国际域名,但在我开始之前,我认为我会测试处理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>

然而,在运行此操作时出现错误:

  

在输入中找到了一个禁止的代码点://æ̧...å žå¤§å|

这发生在.toAscii行。我错过了什么?

1 个答案:

答案 0 :(得分:0)

我在页面顶部添加了<cfprocessingdirective pageencoding="utf-8">,现在使用Java IDN正确编码和解码中文。

我在评论部分找到了这个解决方案:

http://www.bennadel.com/blog/1155-Cleaning-High-Ascii-Values-For-Web-Safeness-In-ColdFusion.htm