我正在写一个Nodejs应用程序,需要能够发送电子邮件。到目前为止,我已经将Postfix与一个名为Nodemailer的Nodejs模块结合使用,通过Amazon SES发送电子邮件。
Postfix一直在处理DKIM签名,但现在我希望摆脱postfix,只使用Nodemailer通过Amazon SES发送电子邮件。
我现在唯一的问题是找到一种在Nodejs中签署电子邮件的方法。我曾经想过在node中使用"exec“来运行opendkim命令,但是还没能实现。从搜索结果来看,似乎也没有针对此的模块。
有人能在这方面帮我吗?
发布于 2012-04-03 17:26:57
最新版本的Nodemailer支持开箱即用的DKIM签名,也在SES上进行了测试。
var transport = nodemailer.createTransport("SES", {
AWSAccessKeyID: "AWSACCESSKEY",
AWSSecretKey: "AWS/Secret/key"
});
// all messages sent with *transport* are signed with the following options
transport.useDKIM({
domainName: "example.com",
keySelector: "dkimselector",
privateKey: fs.readFileSync("private_key.pem")
});
transport.sendMail(...);发布于 2012-03-26 01:52:38
你可以在https://gist.github.com/2198497上找到我开发的一个实现,用于对通过SES发送的邮件进行签名。它的灵感来自于艾哈迈德阿马鲁拉的php实现,可以在这里找到:http://code.google.com/p/php-mail-domain-signer/。我很清楚代码还远远不够干净,但它应该能帮助你入门。gmail和雅虎认为通过它发送的邮件是正确的。如果你有问题/不能让它工作,请不要犹豫。
https://stackoverflow.com/questions/9857681
复制相似问题