gpt4 book ai didi

c# - 将非 ASCII 域转换为 SMTP 兼容

转载 作者:行者123 更新时间:2023-11-30 14:04:35 25 4
gpt4 key购买 nike

当客户输入带有 äüö 等非 ASCII 字符的电子邮件地址时,我们的 SMTP 拒绝处理它们。

所以我认为可能有一个解决方案可以自己处理这些域并将它们转换为 punyocode。

有没有使用 C# 的简单方法?

无论如何这都行得通吗?

最佳答案

您可以使用 Uri.DnsSafeHost转换为 Punycode:

using System;

class Test
{
static void Main()
{
Console.WriteLine(ConvertToPunycode("caf\u00e9.com"));
}

static string ConvertToPunycode(string domain)
{
Uri uri = new Uri("http://"+domain);
return uri.DnsSafeHost;
}
}

在 app.config 中:

<configuration>
<uri>
<idn enabled="All" />
</uri>
</configuration>

结果:

xn--caf-dma.com

关于c# - 将非 ASCII 域转换为 SMTP 兼容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1592703/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com