C# 注册并使用用户';s电子邮件域
在我当前的应用程序中,我想添加一个新功能,客户可以注册他们自己的电子邮件域服务器(如果他们有)。目前我正在使用自己的应用程序域发送所有电子邮件 我想知道我们如何使用ASP.NET WebApi&C#实现这一点,该用户将允许验证和注册自己的电子邮件域,而不是使用默认域 我们是否需要用户的DKIM和SPF记录?如果用户向自己的电子邮件服务提供凭据 然后,您不需要查看DKIM和SPF记录。用户应该自己做 您必须从用户处收集:C# 注册并使用用户';s电子邮件域,c#,asp.net,asp.net-web-api,email,C#,Asp.net,Asp.net Web Api,Email,在我当前的应用程序中,我想添加一个新功能,客户可以注册他们自己的电子邮件域服务器(如果他们有)。目前我正在使用自己的应用程序域发送所有电子邮件 我想知道我们如何使用ASP.NET WebApi&C#实现这一点,该用户将允许验证和注册自己的电子邮件域,而不是使用默认域 我们是否需要用户的DKIM和SPF记录?如果用户向自己的电子邮件服务提供凭据 然后,您不需要查看DKIM和SPF记录。用户应该自己做 您必须从用户处收集: 电子邮件服务类型(smtp、mandrill、postmarkapp…)
- 电子邮件服务类型(smtp、mandrill、postmarkapp…)
- 电子邮件服务主机名(如果是smtp)
- 凭据或api密钥
- 也许还有特定服务选项
“我想知道我们如何才能做到”完成什么?现在还不清楚你想达到什么目的。我已经更新了这个问题。希望现在有意义你是在问“如何保存包含电子邮件域的字符串?”还是什么?我是在问如何验证私有域。就像我们的一些客户希望使用他们自己的电子邮件域一样,这不是我们提供的。我不知道你所说的“注册”是什么意思。用户将在哪里注册域?
var client = new DnsClient(servers, 10000);
var spfRecords = client.Resolve(item.Name, RecordType.Txt);
if (result.AnswerRecords == null || result.AnswerRecords.Count == 0 || result.ReturnCode == ReturnCode.NxDomain)
{
// spf record is missing
}
else if (result.AnswerRecords.Count == 1)
{
// check the record value with SpfRecord.TryParse(item.ActualValue, out spf)
}
else
{
// too many spf records
}