59

希望有人可以提供帮助。我想从我的 Azure 帐户发送电子邮件。我的域名配置为与 Azure 一起使用。

我无法在网上轻松找到如何从 Azure 帐户发送电子邮件。有人提到了 SendGrid,但我的帐户似乎不支持它。

有人可以指导我如何从 Azure 中托管的网站发送电子邮件吗?

4

6 回答 6

60

我知道这是一篇旧帖子,但我刚刚注册了 Azure,每月通过 SendGrid 免费收到 25,000 封电子邮件。这些说明非常好,我在几分钟内就启动并运行了:

如何在 Azure 中使用 SendGrid 发送电子邮件

Azure 客户每月可以解锁 25,000 封免费电子邮件。

于 2014-06-23T10:11:32.433 回答
16

从第三方 SMTP 发送不受 Azure 限制或特定于 Azure。使用 System.Net.Mail,创建您的消息,配置您的 SMTP 客户端,发送电子邮件:

// create the message
var msg = new MailMessage();
msg.From = new MailAddress("info@YourWebSiteDomain.com"); 
msg.To.Add(strTo); 
msg.Subject = strSubject; 
msg.IsBodyHtml = true; 
msg.Body = strMessage;

// configure the smtp server
var smtp = new SmtpClient("YourSMTPServer")
{
    Credentials = new System.Net.NetworkCredential("YourSMTPServerUserName", "YourSMTPServerPassword")
};

// send the message
smtp.Send(msg); 

更新:我在 Medium 上添加了一篇关于如何使用 Azure 函数执行此操作的帖子 - https://medium.com/@viperguynaz/building-a-serverless-contact-form-f8f0bff46ba9

于 2013-07-16T01:00:36.497 回答
11

我永远不会推荐 SendGrid。我接受了他们的免费帐户优惠,但从未成功发送过一封电子邮件 - 都被阻止了 - 我花了几天时间试图解决它。当我询问他们为什么被阻止时,他们告诉我免费帐户共享一个 IP 地址,如果有任何帐户通过发送垃圾邮件滥用该 IP - 那么共享 IP 地址上的每个人都会被阻止 - 完全没用。此外,如果您使用它们 - 不要将您的电子邮件密钥存储在 git 公共存储库中,因为任何人都可以从那里读取密钥(使用爬虫)并使用您的收费帐户发送批量电子邮件。

我一直在 Azure 网站上可靠使用的免费电子邮件服务是使用我的 Gmail(Google 邮件)帐户。该帐户可以选择将其与应用程序一起使用 - 一旦启用该选项,就可以从您的 azure 网站发送电子邮件。粘贴示例发送代码作为要使用的端口 (587) 并不明显。

  public static void SendMail(MailMessage Message)
    {
        SmtpClient client = new SmtpClient();
        client.Host = EnvironmentSecret.Instance.SmtpHost; // smtp.googlemail.com
        client.Port = 587;
        client.UseDefaultCredentials = false;
        client.DeliveryMethod = SmtpDeliveryMethod.Network;
        client.EnableSsl = true;
        client.Credentials = new NetworkCredential(
            EnvironmentSecret.Instance.NetworkCredentialUserName,
            EnvironmentSecret.Instance.NetworkCredentialPassword);
        client.Send(Message);
    }
于 2019-04-02T09:07:35.030 回答
8

实现此“如果您有 Office 365 帐户”的一个好方法是使用与 Azure Logic App 集成的 Office 365 Outlook 连接器

希望这对某人有帮助!

于 2017-11-16T23:26:40.107 回答
6

对于想要使用内置 .NET SmtpClient 而不是 SendGrid 客户端库的人(不确定这是否是 OP 的意图),除非我将apikey其用作我的用户名并将 api 密钥本身用作此处列出的密码。

<mailSettings>
    <smtp>
        <network host="smtp.sendgrid.net" port="587" userName="apikey" password="<your key goes here>" />
    </smtp>
</mailSettings>
于 2017-06-20T15:08:30.193 回答
6

如果您正在寻找一些 ESP 替代品,您也应该看看Mailjet for Microsoft Azure!作为一家全球电子邮件服务和基础设施提供商,他们使您能够通过他们的 API、SMTP 中继或 UI 从一个平台发送、传递和跟踪交易和营销电子邮件,这对开发人员和电子邮件所有者来说都是如此。

免责声明:我在 Mailjet 担任开发人员宣传员。

于 2017-01-23T17:26:28.430 回答