Sky*_*ker 7 javascript node.js express mailgun
我从我的应用程序向用户发送电子邮件通知,但目前我只将其作为文本发送.我想发送它的风格HTML电子邮件.
目前我试过这个:
var data = {
from: 'my app',
to: user.email,
subject: 'Welcome',
html: '<div style="width: 500px; height: 400px: background: #ebebeb; color: #ddd"><p>Hi + "user.firstName" + \n ,this email is to inform you that has added their bio to the knowledge Base \n</p></div>'
};
Run Code Online (Sandbox Code Playgroud)
编译上面的代码不起作用,它不会像我已经把的样式.我创建了一个单独的HTML文件我的本地目录中为每种类型的电子邮件我要送,我希望能够附上HTML文件到我的邮箱.
像这样的东西:
var data = {
from: 'my app',
to: user.email,
subject: 'Welcome',
html: welcomeToSiteEmail.html
};
Run Code Online (Sandbox Code Playgroud)
以上可能吗?任何帮助将不胜感激.
dun*_*all 11
您可以mailgun-js
与一起使用mailcomposer
来发送HTML格式的电子邮件.
所述mailgun-JS文档包括一个例子:
var domain = 'mydomain.mailgun.org';
var mailgun = require('mailgun-js')({ apiKey: "YOUR API KEY", domain: domain });
var mailcomposer = require('mailcomposer');
var mail = mailcomposer({
from: 'you@samples.mailgun.org',
to: 'mm@samples.mailgun.org',
subject: 'Test email subject',
body: 'Test email text',
html: '<b> Test email text </b>'
});
mail.build(function(mailBuildError, message) {
var dataToSend = {
to: 'mm@samples.mailgun.org',
message: message.toString('ascii')
};
mailgun.messages().sendMime(dataToSend, function (sendError, body) {
if (sendError) {
console.log(sendError);
return;
}
});
});
Run Code Online (Sandbox Code Playgroud)
或者,您可以在npm上查看nodemailer.这是一个很棒的包:易于使用和丰富的文档.使用nodemailer,您可以执行类似的操作
var nodemailer = require('nodemailer');
var transport = nodemailer.createTransport({
host: 'smtp.mailgun.org',
port: 587,
secure: false,
tls: { ciphers: 'SSLv3' },
auth: {
user: '<Mailgun SMTP login>',
pass: '<Mailgun SMTP password>'
}
});
transport.sendMail({
from: '<Mailgun SMTP login>',
to: ['bob@example.com', 'bill@foobarbaz.com', /*etc*/],
subject: 'Fancy Email',
text: 'still send some text to be on the safe side',
html: { path: 'path/to/email.html' }
}, callback)
// also returns a promise.
Run Code Online (Sandbox Code Playgroud)
但是,我建议您在设计HTML电子邮件时要非常彻底.编写HTML电子邮件与网络中的html非常不同.有更多种类的电子邮件客户端会以不同的方式呈现您的HTML,而某些,例如Outlook for Windows和gmail web,将不会很好地处理您的HTML.关于设计HTML电子邮件的最佳实践,Litmus有一些很好的资源.
我的建议是为你的样式使用电子邮件的基础,使用inky来简化编写html电子邮件的语义,并使用inline-css来内联你的所有样式.即使您使用其他方式发送邮件,也请查看这些资源以进行设计.他们会为你节省很多头痛.
归档时间: |
|
查看次数: |
6670 次 |
最近记录: |