调用message.get时,Gmail api会返回404错误

时间:2017-02-07 19:42:06

标签: gmail-api

Gmail API history.list返回的messageId在调用message.get时返回404。

我使用“INBOX”标签和“history / messagesAdded”字段调用history.list。然后我调用message.get,返回每个messageId。其中一些返回有效消息,其他返回以下异常:

Google_Service_Exception
{
   "error": {
   "errors": [
   {
     "domain": "global",
     "reason": "notFound",
     "message": "Not Found"
    }
   ],
  "code": 404,
  "message": "Not Found"
 }
}

这会导致什么?好像我们只是检索了messageId,现在没有足够的时间将它们永久删除。

1 个答案:

答案 0 :(得分:0)

如评论中所述,如果删除邮件,则可能发生这种情况。可以在 gmail's history.list 返回的 messagesDeleted 数组中进行检查,只需确保您发送了适当的historyTypes(或者根本不发送任何邮件)即可)。

{
 "history": [
  {
   "id": "69014",
   "messagesAdded": [
    {
     "message": {
      "id": "165a2cd1a5b308b9",
      "threadId": "1659e85b88e80e7b",
     }
    }
   ]
  },
  {
   "id": "69024",
   "messagesDeleted": [
    {
     "message": {
      "id": "165a2cd1a5b308b9",
      "threadId": "1659e85b88e80e7b",
     }
    }
   ]
  }
}