我正在为gmail的Chrome扩展。我想在发送电子邮件发送或发送电子邮件后的扩展程序中获取"消息ID"。我该如何实现?
Gmail中的消息ID是如何生成的?
它是在发送电子邮件之前生成的吗?
注意:我没有超越电子邮件功能。我只需要在Gmail发送电子邮件时就需要唯一的电子邮件。
我想在请求中将此电子邮件ID传递给Gmail API,以便我可以将电子邮件数据作为响应。
根据我的经验,它是在发送电子邮件后创建的。您可能会注意到,如果有草稿消息,则有一个ID,但是一旦发送了该ID,此ID将转换为其MessageID(不同的值),您可以将其用于在收件箱中搜索。您可以检查有关此相关的帖子,以讨论MessageID和DraftID之间的区别。例如,发送电子邮件后使用Gmail API Advance Service在应用程序脚本中的Mogzdad的代码片段。
/**
* Send a raw RFC 2822 formatted and base64url encoded email
* using the Advanced Gmail service.
*
* From http://stackoverflow.com/a/35073785/1677912
*
* @param {String} raw RFC 2822 formatted and base64url encoded message
*
* @returns {String} Message ID of the message (now in Sent Messages).
*/
function sendRawMessage( raw ) {
var message = Gmail.newMessage();
message.raw = raw;
var sentMsg = Gmail.Users.Messages.send(message, 'me');
return sentMsg.id;
}
希望这会有所帮助。