问题标签 [idn]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - IDNA 不往返
我有一些无法解码的 IDNA 编码字符串。在 Python 中,我尝试u"xn--grohandel-shop-2fb".decode("idna")
得到错误“IDNA 不往返”。对于"xn--sottmqqo5-lgbe9b7no0hmz9u"
.
我很困惑,谷歌搜索错误根本没有帮助。
browser - 浏览器是否仅在 punycode 域或整个 url 中编码?
我正在阅读有关 IDN 同形异义词攻击的信息,但没有准确说明浏览器是否仅在 punycode 域中编码或包含 URL 的其余部分(路径和查询)。所以我的问题是流行的浏览器之一(FF、IE、Chrome、Safari、Opera)是否使用 punycode 对 URL 的其余部分(确切地说是 IRI)进行编码?
java - Coldfusion 与 Java IDN 处理国际域
我正在重写我们的一个表单,以便它可以处理国际域,但在我开始之前,我想我会测试处理 IDN 的能力。
我的想法是,如果有人输入像:http://清华大学.cn 这样的域,我会将其作为 punycode 存储在我的数据库中。考虑到这一点,我找到了 Java IDN 处理程序并编写了以下测试代码:
然而,在运行这个我得到一个错误:
在输入中发现了一个禁止的代码点http://æ̧...å�žå¤§å¦
这发生.toAscii
在线上。我错过了什么?
java - Coldfusion 和 Java 如何验证 punycode IDN
最近我重建了一些表格,以便他们接受国际域名,如
http://例子.测试
然后我会将这些存储为 punycode。在此之前,虽然我们运行了验证代码以使用 Coldfusions 方法检查域是否有效isValid()
:
isValid()
使用 punycode,当域如下时,我们会遇到函数失败的问题:
http://例子。测</p>
或者当它使用 punycode 转换为它时CreateObject( "java", "java.net.IDN" ).toASCII(sURL);
,在某些情况下会出现如下:
xn--http://133ab--xn328sdf
(虚构的例子,但在某些情况下,http:// 部分之前会有字符)
目前有没有一种方法可以使用 Java 库或 Coldfusion 库或正则表达式来验证 IDN 和“正常”域?
ssl - IDN 的 SSL 证书中的 CN 和 DNS 字段使用哪种格式?
如果我获得了 IDN 域的 SSL 证书,我应该期望 CN 字段中的值是域名的文字 UTF-8 字符串,还是转义的 punycode 版本?
X509v3 主题备用名称 DNS 条目的格式是否相同?
我可以查看一些示例 crt 文件,或链接到使用 SSL 的 IDN 吗?
有这方面的规范规范吗?
php - 在 PHP 中拆分 IDN URL
我正在尝试按照http://exämple.se/path
或https://äxämple.se/anotherpath?foo=bar&baf=bas
这样的方式获取 IDN URL,以便我得到它的组件,如下所示:
我的第一个想法是“我就用parse_url
!”。好吧,除了它不做 IDN 域,所以没有运气。
接下来我尝试了一堆我自己的正则表达式技巧,但不知何故未能获得任何有用的输出(其中一些工作到一定程度,但仍然痛苦地缺乏。
最后,我尝试了各种其他人的正则表达式模式,但它们似乎都不适合我(正常工作 = 捕获任何有用的东西,一个捕获整个 url 作为它的“协议”部分,我遇到的大多数其他人都没有捕获任何内容或显然在功能上与我尝试过的相同)。
当然,我为什么要这样做?我想idn_to_ascii
在将 URL 重新拼凑在一起并将其存储在数据库中之前在域名上运行。
那么,我在这里做错了什么?我的方法是完全错误的,还是有一些神奇的调用preg_match
可以解决我的问题?
编辑:最好我想要一个不涉及下载其他人编写的代码块的解决方案(比如,一个名为ParseIDNUrl
100kB 的自定义类)
url - 有什么方法可以避免在 IDN 域中显示“xn--”?
如果我使用诸如www.äöü.com 之类的域,有什么方法可以避免它在用户的浏览器中显示为www.xn--4ca0bs.com ?
我猜,像www.xn--4ca0bs.com这样的域名会引起普通互联网用户的很多困惑。
wordpress - WordPress - 使用 inštrukcije 找不到页面
我有一个名为 inštrukcije 的域,其中包括 š 字符。
我使用 IDN 翻译器将其翻译为:xn--intrukcije-19b.si
我在这个域上安装了新的 WordPress:http: //xn--intrukcije-19b.si/
当我尝试浏览页面时,我得到:
在此服务器上找不到请求的 URL /pages/。
我认为这可能是域的问题 - 我有巴尔干字符 inštrukcije 所以我在 MySQL 中更改了表 wp_options 条目 siteurl 从http://inštrukcije.si到http://xn--intrukcije-19b.si(其中我用于域...)
但是页面仍然无法正常工作...
还有什么可能是错的?
url - 从字符串中检测 IDN 域的库?
IM/Email 类型场景:
用户键入他们想要的任何内容并将其发送给他们的好友。如果他们输入一个 URL,我想让收件人可以点击它。这意味着我们需要确定字符串中的一系列字符是一个有效的 URI,并从中创建一个超链接。
是否有一个库可以帮助解析用户输入并检测用户是否将国际化域名作为字符串的一部分输入?
例子:
嘿伙计,这个俄罗斯麦当劳网站 макдональдс.рф 很酷 - 看看吧!
请注意,我不是在谈论解析 URI 或进行 punycode/Unicode 转换 - 在执行任何操作之前,我需要先将其识别为 URI……
c# - 无法在 C# 中读取 UNICODE URL
以下代码将不起作用:
我不明白如何处理 UNICODE URL。
有任何想法吗?
谢谢。