无法在mandrill JSON响应中发送电子邮件数组

时间:2015-06-21 17:58:12

标签: javascript json mandrill

您好我有一个表单,用户输入一条消息并将其发送给多个收件人。我使用Mandrill作为我的电子邮件客户端,脚本如下     

function sendMail() {

    var email = $("#email").val();
    var array = email.split(',');
    var name = $("#name").val();
    var msg = $("#msg").val();


$.ajax({

  type: 'POST',
  url: 'https://mandrillapp.com/api/1.0/messages/send.json',
  data: {
    'key': 'xxxxxxx',
    'message': {
      'from_email': 'xxx@xxx.com',
      'to': [
          {
            'email': email,

            'type': 'to'
          }
        ],
      'autotext': 'true',
      'subject': 'Hello world ' + name,
      'html': msg + '<br> <br> <img src="http://res.cloudinary.com/dzmi0gssmwn/image/upload/v1434831725/wpeqmuld5gzdplf7kzcw.jpg" width:320px;height:auto/>'
    }
  }
 }).done(function(response) {
        alert('Your message has been sent. Thank you!'); // show success message
        $("#name").val(''); // reset field after successful submission
        $("#email").val(''); // reset field after successful submission
        $("#msg").val(''); // reset field after successful submission
    })
    .fail(function(response) {
        alert('Error sending message.');
    });
  }

</script> 

当我输入一个电子邮件地址时,邮件会在收件箱中成功发送和接收。但是当我提交多个地址时,我得到一条消息已经发送的响应,但当我查看日志时,它说明了

[{"email":"xxxx@xxx.xxx, xxxx@xxx.xxx","status":"invalid","_id":"c045cbffbd0c4c5ab5581f5edaff2007","reject_reason":null}]

有人知道如何解决这个问题或了解哪里出错了?感谢您花时间阅读本文。

1 个答案:

答案 0 :(得分:0)

首先只使用mandrill API通过js SDK

<script type="text/javascript" src="mandrill.min.js"></script>

可以找到here

var m = new mandrill.Mandrill('api key');

function sendTheMail(){
    m.messages.send({
        "message": {
            "from_email": "xx@xx.com",
            "from_name": "test",
            "to":[{"email": "xx@x.com", "name": "someone's_name"}],
            "subject": "subj",
            "text": "msg" 
        }
    });
}

不应该在服务器上执行此操作,但是,因为这基本上会将您的API显示为公共,并且一旦公开甚至毫秒,机器人将永远保存它。

相关问题