如何在java中使用Gmail API回复消息?
我正在尝试使用gmail api回复一条消息,但我对设置in reply to和references头感到困惑,我不确定该设置什么值以及如何设置该值。请在下面找到我的代码:
public static Message createMessageWithEmail(MimeMessage emailContent) throws Exception {
ByteArrayOutputStream buffer = new ByteArrayOutputStream();
emailContent.addRecipient(javax.mail.Message.RecipientType.TO, emailContent.getFrom()[0]);
emailContent.setReplyTo(emailContent.getFrom());
emailContent.setHeader("In-Reply-To", emailContent.getMessageID());
emailContent.setHeader("References",emailContent.getMessageID());
emailContent.setText("hi thank you");
emailContent.writeTo(buffer);
byte[] bytes = buffer.toByteArray();
String encodedEmail = Base64.encodeBase64URLSafeString(bytes);
Message message = new Message();
message.setRaw(encodedEmail);
return message;
}
private static Message replyMessage(Gmail service, String userId, MimeMessage emailContent,Message messages) throws Exception {
Message message = createMessageWithEmail(emailContent);
message.setThreadId(messages.getThreadId());
message.setId(messages.getId());
message = service.users().messages().send(userId, message).execute();
System.out.println("Message id: " + message.getId());
System.out.println(message.toPrettyString());
return message;
}
# 1 楼答案
这两个头都来自RFC2822
与您的问题相关的部分包括在第23-24页(重点和格式):