最近我重建了一些表格,以便他们接受国际域名,如
http://例子.测试
然后我会将这些存储为 punycode。在此之前,虽然我们运行了验证代码以使用 Coldfusions 方法检查域是否有效isValid()
:
if(not isValid("url", sURL)){
return false;
}
isValid()
使用 punycode,当域如下时,我们会遇到函数失败的问题:
http://例子。测</p>
或者当它使用 punycode 转换为它时CreateObject( "java", "java.net.IDN" ).toASCII(sURL);
,在某些情况下会出现如下:
xn--http://133ab--xn328sdf
(虚构的例子,但在某些情况下,http:// 部分之前会有字符)
目前有没有一种方法可以使用 Java 库或 Coldfusion 库或正则表达式来验证 IDN 和“正常”域?