如何在Yahoo邮件中获取电子邮件参考?

时间:2013-08-28 13:12:17

标签: java email javamail yahoo

我有以下代码从YahooMail获取收件箱: -

this._store = _session.getStore("imaps");
this._store.connect("imap.mail.yahoo.com", 993, this._uid, this._pwd);
Folder inbox = this._store.getFolder("Inbox");

SearchTerm unread = new FlagTerm(new Flags(Flag.SEEN), false);
IMAPMessage[] msgs = (IMAPMessage[]) inbox.search(unread);

这会以变量 msg 的形式返回未读消息。 我之前有这行代码与 gmail : -

一起工作正常
String ref = msg.getHeader("References")[0];

但现在雅虎,这给了我Null Pointer Exception.

现在问题是,YahooMail中的引用是否存储在邮件标题中,与Gmail不同?

2 个答案:

答案 0 :(得分:0)

回复邮件时设置引用标头。如果您正在阅读的邮件不是回复,则不太可能有引用标头。甚至对于回复,它取决于发送回复添加标题的邮件程序;有些人没有。你总是必须准备好丢失标题。

答案 1 :(得分:0)

参考文献在Yahoo邮件中设置,就像Gmail和其他电子邮件提供商电子邮件一样。

有关详细信息,请参阅此文档:http://cr.yp.to/immhf/thread.html

Bill Shannon提到的问题是,对于第一条消息,之前没有回复过邮件。参考文献是空的。所以下面的代码给出了错误:

String ref = msg.getHeader("References")[0];

这只需要异常处理,其余的工作正常。