10

我正在使用我的 Web 应用程序平台 (node.js) 上的模块 (nodemailer) 从使用我的 Web 应用程序的联系页面的人向自己发送电子邮件。因为,我正在向自己发送电子邮件,如果我回复电子邮件,我将再次向自己发送电子邮件,而不是将其发送到电子邮件标题中设置的“发件人”标题中的电子邮件。我怎样才能让客户(gmail、yahoo 等)知道应该回复哪封电子邮件?

我正在使用 Node.js 的 Nodemailer 模块从 Ubuntu Linux 服务器进行发送。

4

7 回答 7

8

通常添加一个Reply-To:标头就足以指示应将回复发送到哪个地址。

于 2013-05-15T22:51:30.510 回答
4

我遇到了完全相同的问题,并在这个StackOverflow 线程中找到了解决方案,它指向了这个论坛

如果“发件人”地址与“收件人”地址相同,或者在 GMail 设置中配置为“发送为...”帐户之一,Gmail 会回复“收件人”地址而不是“回复-讲话。一个简单的解决方法是指定一个非 Gmail“发件人”地址

在找到解决方案之前,我浪费了很多时间。希望这对其他人有所帮助。

于 2014-07-24T03:28:06.890 回答
3

我对 Nodemailer 一无所知,但他们的文档似乎表明它支持设置 replyTo 属性——这听起来像你想要的吗?所有主要的电子邮件客户端都使用电子邮件的回复字段来发送回复(如果存在)。

于 2013-05-15T22:51:52.320 回答
2

将 replyTo 字段添加到 mailOptions 对象。这对我有用。它也在他们的文档中。

发件人仍会显示您的电子邮件,但回复将转到回复电子邮件。此外,请确保在 from 字段中使用“Fred Foo”语法,您将在会话 from 字段中看到发件人的姓名。

于 2017-06-29T21:59:04.963 回答
0

阅读所有答案后,这对我有用:

指定“ from ”和“ replyTo ”字段(以及您要回复的电子邮件),而不仅仅是一个或另一个。

这使您仍然可以使用 Gmail 帐户来发送这些邮件。

于 2018-05-23T12:34:38.330 回答
0

我想这个问题应该已经解决了。我刚刚使用当前最新的 nodemailer 自己测试了它,我能够发送给自己,并且回复设置为另一个在 gmail 中完美运行的电子邮件地址。我只需要确保将 from 和 to 指定为同一电子邮件(即我的电子邮件),然后将回复指定为用户的电子邮件。在此测试中,所有电子邮件地址都是 gmail 地址,以防有人想知道。

"nodemailer": "^6.6.0"

那是我刚刚测试过的nodemailer版本。

于 2021-04-29T16:42:05.803 回答
0

您可以通过添加 replyTo: email@email.com 作为 mailOptions 的路由选项来轻松做到这一点:

例子

var transporter = nodemailer.createTransport({
    host: "smtp.server.com",
    port: 465,
    secure: true,
    auth: {
      user: "sender@email.com",
      pass: "psw",
    },
});

const mailOptions = {
    from: "from@email.com",
    to: "to@email.com",
    subject: "New Feedback",
    replyTo: email,
    html: `
    Your email html code here .... `,
};



 transporter.sendMail(mailOptions, (error, data) => {
    console.log(data);
    if (error) {
      console.log(error); 
    } 
  });
于 2022-02-20T18:16:35.650 回答