问题标签 [punycode]
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.
vba - Excel VBA Punycode 支持国际域名(IDNA2003、IDNA2008 和 UTS46)
Excel VBA 是否为 Punycode 或转换为国际化域名的 Unicode/Ascii 提供任何类型的方法、函数或 API?
我能够找到似乎适用于 IDNA2008 标准的 JavaScript 版本(如下)。我仍然可以在 VBA 中使用它,但我认为这有点笨拙......
我尝试过的另一种方法是从在线 Punycode 转换器 ( http://www.unicode.org/cldr/utility/idna.jsp?a= ) 中抓取响应,但我真的对此并不感到疯狂,因为网站有时不可用,而且效率不高...
由于不同的网络浏览器(Internet Explorer、Firefox 和 Chrome)使用不同的标准。我需要能够使用所有标准(IDNA2003、UTS46、IDNA2008)在 Puny 之间进行转换,以便我可以生成/捕获所有可能的变化。
例如使用域“schüloß.de”我应该能够产生 2 个不同的变体:
统一码:
ASCII:
我不知道有任何 Web 对象或内置功能可以帮助处理 Punycode ...
有人会有一种可靠有效的方法来执行所有标准的 Punycode 转换吗?任何帮助将不胜感激。
附加信息:
在 Windows 7 中使用 MS Office 2013(32 位)。
该解决方案无法尝试与 Unicode 域进行通信。如果可能的话,我不反对使用 WinHttp 对象,但出于安全原因,它不能发送或尝试将传出网络流量发送到域......
不幸的是,这是需要 VBA 解决方案而无需安装外部软件的问题之一。
再次,非常感谢任何帮助!
php - 如何检查域是否是punycode?
好吧,我使用 idna_convert PHP 类 ( http://idnaconv.net/index.html ) 来编码/解码域名。
不幸的是,它似乎没有提供一个接口来检查一个域名是否已经是 punycode。
实现这一目标的最佳方法是什么?如果有人可以发布源代码如何验证域是否是 punycode,那就太好了(有解释,因为 idna_convert 代码对我来说不是很清楚)。我已经知道如何从 idna_convert 捕获异常。:-)
顺便说一句:当您尝试将域名转换为已经是 punycode 的 punycode 时,idna_convert 会引发异常(请参阅https://github.com/phlylabs/idna-convert/blob/master/src/Punycode.php;第 157 行) . 此外,我真的不明白他们的支票是如何运作的。
internationalization - 我可以将所有域名都视为 IDN 而不会产生任何不良影响吗?
从测试来看,似乎尝试将 IDN 和常规域名都转换为“正常工作” - 例如,如果不需要更改输入,punycode 只会返回输入。
返回:
和
返回:
这看起来很棒,但它是否在任何地方指定?我可以安全地将所有内容转换为 punycode 吗?
java - java - 必须先删除 IDN.toASCII 协议吗?
我为我的 JSF 网页创建了一个 URL 验证器,现在偶然发现了第一个单词(由点分隔)包含非 ASCII 字符的域的问题。
我有以下有效的网站网址http://testä.com
。IDN.toASCII()
使用创建无效的 url:将其转换为微不足道的代码xn--http://test-v8a.com
。
不应该http://xn--test-ooa.com/
我还在德国de
域管理器 DENIC 上检查了它,它显示了相同的无效 URL 结果。
https://www.denic.de/service/tools/idn-web-converter/
这是 Java/RFC 中的 BUG 还是我遗漏了什么。
解决方法
当我首先删除协议时,它可以工作。
utf-8 - MSXML2.ServerXMLHTTP 和国家字符
这个问题与这个问题有关:Character encoding Microsoft.XmlHttp in Vbscript,但有一点不同,国家字符在域名中,而不仅仅是参数。
任务是:从给定的 URL 下载页面。
我已经解决了通过 ADO 从 UTF8 编码文件中读取 UTF8 字符串到 VBScript 的问题。
但是现在当我尝试打开它时,MSXML2.ServerXMLHTTP 返回错误: URL 无效。
这是VBScript代码:
如果您将hxxp://россия.рф/main/page5.html之类的内容放入 UTF8 编码的 fileWithURL.txt 中,则脚本将在与hxxp://google.com正常工作时引发错误。
解决方法是使用域名的 ascii 表示 - 但我还没有找到用于 vbscript 的 PunnyCode 编码器(除了Chillkat,这对我的任务来说是一种过度杀伤力)。
感谢您对主要问题或解决方法的帮助。
email-validation - punycode 正确的电子邮件地址
使用包含 unicode 字符的电子邮件时,例如
您需要对两边进行 punycode 转换还是仅在右侧进行转换?
或者
c++ - QString from Punycode QUrl
If I put url http://www.äsdf.de/bla/bla
into QUrl
, how can I then restore url with original symbols?
It's ok that QUrl
will fix some characters, but I'd like to display original äsdf
in url instead of xn--sdf-pla
.
I am aware about QString QUrl::fromAce(const QByteArray &domain)
, but it requires QByteArray
instead of QUrl
instance.
nginx - Nginx server_name 中的 Unicode 域名
我正在尝试使用名为“privatinstruktør.dk”的域名设置服务器,但不断被重定向到默认的“欢迎使用 nginx”页面。
我试图像这样输入 server_name:
但这没有用。所以我尝试使用正则表达式,例如:
和
乃至
但一切都失败了,我被重定向到默认页面。有没有人提示如何解决这个问题?
php - PHP idn_to_ascii / VB.net idn.GetAscii() 不会产生正确的 PUNY CODE / IDN 域
我试图将域:http://pfeffermühle.com 转换为 Punycode 形式的正确 IDN 域。我使用了 vb.net 和 php,但两个结果都不正确。
VB.net:
PHP:
但正确的结果是:http: //xn--pfeffermhle-0hb.com
你可以在这里查看:
http://www.idnconverter.se/http://xn--pfeffermhle-0hb.com
问题是什么?
请帮忙。
谢谢
google-chrome - Unicode 字符的有效域名注册
我试图弄清楚什么对域名注册有效,显然有些 Unicode 字符翻译得很奇怪,而另一些则根本没有。
这个地址:
转换为:
和
应翻译为:
但由于某种原因,浏览器阻止了它。
这些域的格式是如何确定的,浏览器阻止或不阻止什么?
http://xn--ippleman-dmj.com/
是一个有效的 URL,而http://www.gοοgle.com
不是。然而 Chrome 只替换了第二个 URL 上的 Unicode。