我需要来自邮件标题的电子邮件的message-id,有什么方法可以从邮件Header中提取邮件ID。我正在使用grails邮件插件。
答案 0 :(得分:1)
邮件ID是邮件标头的第一个元素。因此,实现此目的的方法是以字符串形式输出电子邮件内容,然后使用正则表达式提取message-id(使用Java完成的示例,但您可以使用Groovy正则表达式执行相同操作)。
String id;
String mailToString;
Pattern p = Pattern.compile("Message-ID: <(.*)>");
Matcher m = p.matcher(mailToString);
if(m.find()){
id = m.group();
}
答案 1 :(得分:0)
@Benoit - 它不适用于我。
代替:
def inbox = store.getFolder('INBOX')
inbox.messages.each{email->
println "Message-Id: ${email.messageID}"
}
完美地完成了这项工作。
同样适用于Multipart电子邮件的每个部分。
欢呼声。