我正在尝试向我的邮件列表中的任何新订阅者发送电子邮件。一切都很好,但"发件人"电子邮件地址不会更改为" noreplay。它保留为我通过身份验证的电子邮件,在本例中是我的工作邮件。例如,如果我设置"来自"到" noreply@example.com"它从" jaafar@example.com"发送邮件。这是我的代码:
if (snapshot.child("subscribed").val() === 'true') {
var value = snapshot.child("email").val(); //ignore this
var key = snapshot.key; //ignore this
var mailHtml = val.htmlText1 + httpLink + key + val.htmlText2; //ignore this
let mailOptions = {
from: '"JaafarsCompany" <noreply@jaafarsCompany.io>', // sender address
to: value, // list of receivers
subject: 'Hello', // Subject line
text: 'Hello world', // plain text body
html: mailHtml //ignore this
};
// send mail with defined transport object
mailTransport.sendMail(mailOptions, (error, info) => {
if (error) {
return console.log(error);
}
console.log('Mail sent to: ' + value + '. ' + 'Message %s sent: %s', info.messageId, info.response);
});
我只是基于文档中的示例。收到的电子邮件就好像来自&#34; JaafarsCompany&#34;,但如果您点击发件人姓名,它会显示我的工作邮件。
希望这是有道理的。我正在寻找可以指向正确方向的任何事情。我觉得我多年来一直在谷歌搜索这个问题:(
答案 0 :(得分:2)
我弄清楚问题是什么。基本上,医生说:
Gmail还始终将经过身份验证的用户名设置为发件人:电子邮件 地址。因此,如果您通过foo@example.com进行身份验证并进行设置 bar@example.com作为发件人:地址,然后Gmail还原此地址 用经过身份验证的用户替换发件人。
要解决此问题,需要在管理控制台中添加一个组。之后转到this链接,然后按照说明操作。
我从Firebase支持者处获得了帮助来解决此问题。希望有一天能帮到某人: - )