2

当我调用 IdnMapping.GetAscii(http://президент.рф/) 我得到的结果 xn-- http://-5ggibum1ewap2b.xn--/-4tbm 这是不正确的。

不知道问题出在哪里?这种方法在 C# 中是否按预期工作?当我在谷歌浏览器中复制粘贴相同的网址时,它会自动将其转换为 http://xn--d1abbgf6aiiy.xn--p1ai/

4

1 回答 1

2

域名不包含协议前缀。删除http://和尾随反斜杠以获得完全相同的结果。

    static void Main(string[] args) {
        var map = new System.Globalization.IdnMapping();
        Console.WriteLine(map.GetAscii("президент.рф"));
    }

输出:

xn--d1abbgf6aiiy.xn--p1ai

于 2013-12-26T13:23:08.397 回答