使用 Mailgun 从 Chrome 分机发送电子邮件

Send an email from Chrome extension with Mailgun

我有一个小的 Chrome 扩展,我只为自己使用。目前它使用 Mandrill,但 Mandrill 将在大约一个月后停止免费,我正在寻找其他方式从扩展程序发送电子邮件。

我需要的是非常简单、纯粹的 Javascript-jQuery。我不介意在代码中公开 API 键,因为扩展仅供我自己使用。我一直在查看 Mailgun 或 SparkPost 等站点中的文档,但找不到简单而纯粹的 JavaScript 示例。例如,这是我为 Mailgun 尝试的代码;即使我正在使用我的沙箱 URL 并且它处于活动状态,它也会引发 404:

$.ajax({
    type: "POST",
    url: "MY SANDBOX URL",
    data: {
      'user':'api',
      'key': 'MY KEY',
      'from': 'SENDER EMAIL ADDRESS',
      'to': 'RECIPIENT EMAIL ADDRESS',
      'subject': 'Subject',
      'text': 'Body'
      }
    }).done(function(response) {
        console.log("Email sent");
 });

拜托,你能帮帮我吗?谢谢!

抱歉耽搁了,我真的很忙,认为这需要很多小时的努力,所以我直到有时间才尝试。事实上,所有过程只用了不到 30 分钟,因为 SendGrid 有一个很好的文档并且非常易于使用,至少对于我需要的是这样。感谢 Adnan Umer 指点我使用这个工具。

这是我所做的:

1) 创建一个免费帐户。每月最多允许 12k 封电子邮件,对我来说绰绰有余。

2) 等待帐户配置完成。就我而言,这是即时的,但有时可能会有延迟,据称长达数小时。

3) 在此处生成通用 API 密钥:https://app.sendgrid.com/settings/api_keys 具有对 "Mail Send".

的完全访问权限

4) 发送一封电子邮件,添加 "Authorization" header,并在 header.

中将密钥作为 "Bearer" 令牌

在我的例子中,这工作正常:

$.ajax({
    type: "POST",
    url: "https://api.sendgrid.com/api/mail.send.json",
    headers: {
        'Authorization': 'Bearer ' + SENDGRID_API_KEY
    },
    data: {
        'to': EMAIL_ADDRESS_TO,
        'from': EMAIL_ADDRESS_FROM,
        'subject': 'Email subject',
        'html': 'Email body',
    }
}).done(function(response) {
    console.log("Email sent");
});

谢谢大家!