我是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值,并替换为空字符串。
我错过了什么吗?
谢谢,
答案 0 :(得分:0)
您的所有邮件标题都必须是字符串;您当前正在为mergevars传递JavaScript对象。
尝试使用JSON.stringify将对象转换为标题的字符串:
"X-MC-MergeVars": JSON.stringify( {"userName": "Pranav"} ),