如何检测电子邮件作为主题行在gmail中更改的回复?

时间:2016-06-29 11:32:19

标签: java api email gmail

我在java中使用gmail api来发送和获取电子邮件。回复电子邮件的主题行改变时,我发现很难检测到已发送电子邮件的回复。有没有解决这个问题的方法?

2 个答案:

答案 0 :(得分:0)

告诉电子邮件是回复的唯一确定方法是检查以RE:开头的主题。

(旁注,对于所有专业信函,这都是good practice,因为更改主题行会使电子邮件链更难编目。)

除了这种方法之外,作为备份,我认为你可以通过编程方式阅读消息正文中的文本。我知道有些电子邮件提供商会更改字体颜色(有时是大小),如果是回复,则会在电子邮件正文中添加淡蓝/红/紫色色调。

答案 1 :(得分:0)

将回复与原始电子邮件关联起来的最可靠方法是使用in-reply-to标头。

但是,当主题行发生更改时,对于大多数电子邮件提供商(如gmail,yahoo)甚至在使用Outlook客户端时,回复标题都没有回来

我们发现只有outlook.com域返回in-reply-to标头,即使主题行被修改。

所有这些都是完全合法的,因为以下是RFC Page

中提到的内容
  

3.6.5。信息领域

     

信息字段都是可选字段。 "关键字:"场
  包含一个逗号分隔的一个或多个单词列表或
  带引号的字符串。 "主题:"和#34;评论:"字段是
  2.2.1节中定义的非结构化字段,因此可以是   包含文字或折叠白色空间。

     

subject ="主题:"非结构化CRLF

     

comments ="评论:"非结构化CRLF

     

keywords ="关键字:"短语*(","短语)CRLF

     

这三个字段仅包含人类可读的内容   有关消息的信息。 "主题:"场是最多的   common,包含一个标识主题的短字符串   信息。当在回复中使用时,字段正文可以以
开头   字符串" Re:" (来自拉丁语" res",在此问题上),然后是   "主题的内容:"原始信息的字体。
  如果这样做,只有一个文字字符串的实例" Re:"应该   因为使用其他字符串或多个实例可以使用   导致不良后果。 "评论:"字段包含任何   对消息正文的补充评论。该
  "关键词:"字段包含以逗号分隔的重要单词列表
  和可能对收件人有用的短语。