我正在使用 java 邮件 API 使用 Gmail 帐户发送邮件。我的要求是,在发送邮件时,我需要消息 ID(或电子邮件的一些唯一 ID)在我的本地数据库中存储一些附加信息。
由于 Transport.send() 方法没有返回值,我无法获取邮件的 ID?
所以两个问题:
1)任何人都可以帮助我在发送时获取邮件的 Gmail id 吗?
2) “Message-ID”是邮件的唯一标识符吗?
提前致谢。
我正在使用 java 邮件 API 使用 Gmail 帐户发送邮件。我的要求是,在发送邮件时,我需要消息 ID(或电子邮件的一些唯一 ID)在我的本地数据库中存储一些附加信息。
由于 Transport.send() 方法没有返回值,我无法获取邮件的 ID?
所以两个问题:
1)任何人都可以帮助我在发送时获取邮件的 Gmail id 吗?
2) “Message-ID”是邮件的唯一标识符吗?
提前致谢。
JavaMail 在发送消息时会设置一个 Message-ID。您可以在使用 msg.getMessageID() 发送消息后从消息中读取它。
Message-Id 应该是邮件的唯一标识符(请参阅 wiki),但要获取邮件 ID,您可以自己生成它(这就是邮件程序所做的 - 它不是由服务器生成的),或者如果您使用某种 API 来为你它要么提供一种方法来检索它。如果没有,您可能最终需要获取该邮件正文(即通过密件抄送给自己)并从邮件中提取它。