无法使用nodemailer (gmail)开始邮件线程(回复邮件)

5

我正在使用nodemailer发送电子邮件。但是我想回复一封邮件(开始一个新的线程)。我已经尝试使用以下代码来回复一封邮件:

var nodemailer = require('nodemailer');

const subject = 'Hey I am test';

var transporter = nodemailer.createTransport({
  service: 'gmail',
  auth: {
    user: '*******',
    pass: '*******'
  }
});

const mailOptions = {
  from: 'mymail@gmail.com',
  to: 'receiver@gmail.com',
  subject,
  text: 'Body',
};

transporter.sendMail(mailOptions, function (error, info) {
  if (error) {
    console.log(error);
  } else {
    console.log(info.messageId);
    const threadOptions = {
      from: 'mymail@gmail.com',
      to: 'receiver@gmail.com',
      subject:'Re: ' + subject,
      text: 'This is reply',
      inReplyTo: info.messageId,
      references: [info.messageId]
    };
    transporter.sendMail(threadOptions);
  }
});


但它会被发送作为一封新邮件。在文档中提到使用inReplyToreferences字段会开启一个新的线程,但这并没有起作用。
非常感谢任何帮助。

你是否正在尝试设置自动回复系统?我的意思是,首先用户向您发送一条消息,然后您发送自动回复?您能否更详细地描述一下这种情况? - Towerss
2个回答

3
  1. 回复邮件的主题应该和已发送的邮件的主题相同。当回复邮件的主题和你所回复的邮件的主题相同时,回复邮件将会在之前发送的邮件的线程中。

  2. 你需要为发送回复的电子邮件账户定义凭据。

很抱歉我的英语不好。


1

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