【问题标题】:SMTP authentication with .NET fails.NET 的 SMTP 身份验证失败
【发布时间】:2011-10-09 09:03:10
【问题描述】:

您好,我在通过我的网站发送邮件时遇到一些问题。

我不断收到错误

SMTP 服务器需要安全连接或客户端未通过身份验证。服务器响应为:需要 SMTP 身份验证。

我的 Web.config 有

<system.net>
    <mailSettings>
        <smtp from="XXXX@XXXXX.XX">
            <network host="mail.XXXXX.XX" port="25" userName="XXXX@XXXXX.XX" password="XXXXXXXX" defaultCredentials="true" />
        </smtp>
    </mailSettings>
</system.net>

还有我的代码

            MailMessage message = new MailMessage();
            message.From = new MailAddress("XXXX@XXXXX.XX");
            message.To.Add(new MailAddress(split[0]));
            message.Subject = split[1];
            message.Body = ContactUsBody(model);
            message.IsBodyHtml = true;

            SmtpClient client = new SmtpClient();
            client.Send(message);

它在 client.Send(message) 上引发错误,我认为由于某种原因它不使用配置中的密码和用户名。 我尝试通过雷鸟登录电子邮件帐户,并且在那里发送或接收邮件没有问题。 我在这里做错了什么?

【问题讨论】:

    标签: c# asp.net smtpclient


    【解决方案1】:

    它不使用您提供的凭据,因为您已将其设置为使用默认凭据。

    试试这个:

    <system.net>
        <mailSettings>
            <smtp from="XXXX@XXXXX.XX" deliveryMethod="network">
                <network host="mail.XXXXX.XX" port="25" userName="XXXX@XXXXX.XX" password="XXXXXXXX" defaultCredentials="false" />
            </smtp>
        </mailSettings>
    </system.net>
    

    【讨论】:

    • 那没有帮助:(同样的问题,我已经三重检查了用户名和密码,它们没有错。
    猜你喜欢
    • 2015-10-14
    • 2012-06-16
    • 2019-03-14
    • 2017-01-31
    • 1970-01-01
    • 2013-08-07
    • 1970-01-01
    • 1970-01-01
    • 2015-02-01
    相关资源
    最近更新 更多