Mailkit 是否支持发送匿名邮件?
Does Mailkit supports sending anonymous emails?
我尝试从中发送电子邮件的 Exchange 主机不需要身份验证。过去我使用 SmtpClient Class 成功实现了这一点,但由于 Microsoft 推荐 Mailkit,我更喜欢这个。
Mailkit 是否总是需要用户名和密码才能连接?我一直在到处寻找答案,但我似乎找不到。
到目前为止,这是我的代码:
private void Send(MimeMessage message)
{
using (var client = new SmtpClient(new ProtocolLogger(Console.OpenStandardOutput())))
{
client.Connect(Host, Port, SecureSocketOptions.None);
client.Send(message);
client.Disconnect(true);
}
}
当然我收到一个错误:5.7.1 客户端未通过身份验证
谢谢大家。
Does Mailkit always require a username and a password to connect? I have been searching for an answer everywhere but I cannot seem to find one.
MailKit 不需要身份验证 - 这取决于服务器是否需要它。
如果服务器不需要身份验证,您的代码只需要不调用 client.Authenticate()
(或 AuthenticateAsync,如果您使用的是异步代码)就像您在示例代码片段中尝试做的那样。
5.7.1 client was not authenticated
是在您尝试发送邮件时来自您的 SMTP 服务器的错误,表明您的 SMTP 服务器配置为需要身份验证。
None MailKit 抛出的异常消息以错误代码字符串开头(5.7.1 是 SMTP 错误代码),因此如果抛出以 SMTP 错误代码字符串开头的异常,则它表示它来自服务器。
我尝试从中发送电子邮件的 Exchange 主机不需要身份验证。过去我使用 SmtpClient Class 成功实现了这一点,但由于 Microsoft 推荐 Mailkit,我更喜欢这个。
Mailkit 是否总是需要用户名和密码才能连接?我一直在到处寻找答案,但我似乎找不到。
到目前为止,这是我的代码:
private void Send(MimeMessage message)
{
using (var client = new SmtpClient(new ProtocolLogger(Console.OpenStandardOutput())))
{
client.Connect(Host, Port, SecureSocketOptions.None);
client.Send(message);
client.Disconnect(true);
}
}
当然我收到一个错误:5.7.1 客户端未通过身份验证
谢谢大家。
Does Mailkit always require a username and a password to connect? I have been searching for an answer everywhere but I cannot seem to find one.
MailKit 不需要身份验证 - 这取决于服务器是否需要它。
如果服务器不需要身份验证,您的代码只需要不调用 client.Authenticate()
(或 AuthenticateAsync,如果您使用的是异步代码)就像您在示例代码片段中尝试做的那样。
5.7.1 client was not authenticated
是在您尝试发送邮件时来自您的 SMTP 服务器的错误,表明您的 SMTP 服务器配置为需要身份验证。
None MailKit 抛出的异常消息以错误代码字符串开头(5.7.1 是 SMTP 错误代码),因此如果抛出以 SMTP 错误代码字符串开头的异常,则它表示它来自服务器。