使用nodemailer和sestransport设置发件人名称

4
我正在使用NodeJS和Nodemailer以及sestransport在AWS上发送电子邮件,想知道如何更改“发件人姓名”?例如,对于发件人,我输入了:
    const mailOptions =
    {
      from:     '<noreply@example.com>',
      to:       'someone@example.com',
      subject:  'Hi',
    }

当我收到这封电子邮件时,发件人显示为“noreply”。我想把发件人的名字改成任何名称,例如“汤姆·汉克斯”,但仍然保留回复地址为noreply@example.com。这是否可行?
4个回答

6

只需在电子邮件地址之前指定即可:

const mailOptions =
{
  from:     '"Tom Hanks" <noreply@example.com>',
  to:       'someone@example.com',
  subject:  'Hi',
}

2
你可以使用具有 "name" 和 "address" 属性的地址对象。"name" 属性将是发件人的友好名称,而 "address" 字段将是实际发件人的电子邮件地址。详见 Address object
const mailOptions = {
  from: { name: 'Naruto Uzumaki', address: 'noreply@example.com' },
  to: 'someone@example.com',
  subject: 'Hi',
}

2
抱歉,我刚才找到了答案。只需执行以下操作:

最初的回答
const mailOptions =
{
  from:     'Tom Hanks <noreply@example.com>',
  to:       'someone@example.com',
  subject:  'Hi',
}

最初的回答:然后发送者的名字会显示为Tom Hanks。

0

如果你不想硬编码你的名字,你可以使用模板字符串

const mailOptions = 
{
  from:   `${myNameVariable} <noreplay@example.com>`,
  to:      mySenderVariable,
  subject: mySubjectVariable
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接