【问题标题】:Sending mails from an SMTP server从 SMTP 服务器发送邮件
【发布时间】:2014-01-04 00:19:59
【问题描述】:

我知道要从 SMTP 服务器发送电子邮件,需要服务器地址、密码和用户名/默认凭据。但是,SMTP 是否也有访问服务器本身的密码?还有用户名吗?

【问题讨论】:

  • 为什么同时标记 C# 和 Java?您在寻找实施吗?
  • @I3arnon - 不,我不是在寻找代码。只有概念。由于 C# 和 Java 很流行,而且许多程序员可能已经做过 smtp 邮件,所以我用 java 和 C# 标记了它。它将帮助我的帖子获得所需的关注。谁说——好吧!今天我要尝试一些 smtp 问题?
  • 为了引起注意而进行不相关的标记是不值得称赞的。
  • @punund - 好的,那么让我补充一下,首选 C# 解决方案。我别无选择。此外,即使我稍后在它上面放了 250 的赏金,它仍然可能没有得到它需要的关注,因为人们仍然不会寻找 smtp 问题。
  • @blasto 我举了一个基本的例子。我认为您需要明确说明您要完成的工作,但您的措辞不够清楚。您只是想通过代码发送电子邮件吗?

标签: c# java email smtp


【解决方案1】:

这是对我有用的实现:

            System.Net.Mail.MailMessage message = new System.Net.Mail.MailMessage();
            message.To.Add("receiveremailaddress@xxx.com");
            message.Subject = "This is the Subject line";
            message.From = new MailAddress("youremailaddress@xxx.it", "Name to Display");
            message.Body = "This is the message body";
            System.Net.Mail.SmtpClient smtp = new System.Net.Mail.SmtpClient("yoursmtphost");
            smtp.Credentials = new NetworkCredential("youremailaddress@xxx.it", "yourpassword");
            smtp.Send(message);

【讨论】:

    【解决方案2】:

    你只需要

    • 主机名:smtp.servername.com
    • 端口:25 或 465(取决于 SSL)
    • 用户名:我的用户
    • 密码:我的密码

    您不需要“服务器本身”的密码或类似的密码。

    根据服务器配置,您发送“来自”的电子邮件可能需要也可能不需要是该服务器上的有效电子邮件地址。

    编辑:基本 C# 实现

    System.Net.Mail.MailMessage message = new System.Net.Mail.MailMessage();
    message.To.Add("luckyperson@online.microsoft.com");
    message.Subject = "This is the Subject line";
    message.From = new System.Net.Mail.MailAddress("yourmailuser@yourhost.com",25);
    message.Body = "This is the message body";
    System.Net.Mail.SmtpClient smtp = new System.Net.Mail.SmtpClient("yoursmtphost");
    // if you need user/pass login
    client.Credentials = new NetworkCredential("username","password");
    smtp.Send(message);
    

    【讨论】:

    • 这是发送邮件 SMTP服务器,而不是发送它 SMTP服务器。
    • @punund 所以你建议代码模拟一个与目标 SMTP 服务器对话的 SMTP 服务器。听起来很奇怪。
    • 谢谢。但是,实际上,我已经实现了该代码。但是,知道是有用的。
    【解决方案3】:

    “但是,SMTP 是否也有访问服务器本身的密码?是否也有用户名?”

    不,您可能需要的唯一密码是具有凭据的电子邮件帐户。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-06-22
      • 1970-01-01
      • 2011-02-07
      • 2018-10-17
      • 2021-10-01
      • 2017-01-30
      相关资源
      最近更新 更多