无法在新的Gmail用户界面中打开通过Gmail REST API发送的电子邮件/草稿

joh*_*n2x 17 gmail gmail-api

通过Gmail REST API发送草稿时,发件人无法在新的Gmail用户界面中打开"已发邮件"文件夹中的邮件.您收到错误消息"The conversation that you requested could not be loaded.".

接收方的消息可以毫无问题地打开,无论是否有新UI.

恢复旧的/经典Gmail用户界面允许发件人打开已发送的邮件.

重现步骤:

  1. 在Gmail中撰写草稿(新旧UI无关紧要)
  2. 通过查找草稿ID GET https://www.googleapis.com/gmail/v1/users/me/drafts
  3. 通过POST https://www.googleapis.com/gmail/v1/users/me/drafts/send正文发送草稿{"id": "<draftId>"}
  4. 返回Gmail并切换到新的Gmail用户界面,然后尝试在"已发送"文件夹中打开最近发送的草稿.尝试打开邮件将失败.
  5. 恢复旧的/经典Gmail用户界面并在"已发送"文件夹中打开最近发送的草稿.您将能够毫无问题地打开邮件.
  6. 使用新的或旧的UI,收件人将能够毫无问题地打开邮件.

UPDATE

当损坏的已发送电子邮件收到回复后,它似乎已"修复",发件人现在可以从新的Gmail用户界面打开已发送的电子邮件.这似乎表明REST API缺少一些线程通过其他方式更新后得到修复的东西?

尝试打开已损坏的已发送邮件时,浏览器控制台中的错误消息:

Error: Ppa No message loaded when we received the DETAILED_CONVERSATION_MESSAGES_LOADED event.

Jay*_*Lee 0

我无法重现这个。注意,在再现步骤#2中是不必要的。相反,应该分析#1中drafts.c​​reate()的结果,其中存在新草稿消息的id。

另外值得注意的是,草稿 ID 与消息 ID 不同。Drafts.c​​reate()和drafts.update()的响应将是草稿ID,而drafts.send()的结果将是消息ID。在 Gmail 用户界面中查看已发送的邮件时,请确保您使用的是邮件 ID。