如何将X-MC-MergeVars用于把手

时间:2015-07-02 07:26:40

标签: smtp handlebars.js mandrill

我是mandrill的新手并尝试使用把手和SMTP设置邮件。我的模板看起来像 -

<span> {{userName}}, </span> Welcome to ......

这是我的mailer.js的样子(在node.js上运行)

var mailer   = require("mailer")
  , username = "**@***.com"
  , password = "*********";

mailer.send(
  {host:           "smtp.mandrillapp.com",
   port:           25,
   to:             "**@gmail.com",
   from:           "**@gmail.com",
   subject:        "Mail using Mandrill!",
   authentication: "login",
   username:       "**@**.com",
   password:       "********",
   headers: {
      "X-MC-Track": "clicks",
      "X-MC-Autotext": true,
      "X-MC-Template": "newsFeed",
      "X-MC-MergeVars": {"userName": "Pranav"},
      "X-MC-MergeLanguage": "handlebars"
   }
  }, function(err, result){
    if(err){
      console.log(err);
    }
  }
);

我收到邮件,但userName未替换为使用X-MC-MergeVars传递的userName值,并替换为空字符串。

我错过了什么吗?

谢谢,

1 个答案:

答案 0 :(得分:0)

您的所有邮件标题都必须是字符串;您当前正在为mergevars传递JavaScript对象。

尝试使用JSON.stringify将对象转换为标题的字符串:

  "X-MC-MergeVars": JSON.stringify( {"userName": "Pranav"} ),