检查邮件是否已读取,Gmail API

zoe*_*ver 5 html javascript python jquery gmail-api

我正在开发一个gmail应用程序(您可能会告诉您是否阅读了其他问题),我可以列出我的前10封电子邮件,但是我无法知道他们是否被阅读。有人知道我什至会怎么做吗?谢谢!

Tho*_*lle 6

如果我列出我的最新消息:

要求

GET https://www.googleapis.com/gmail/v1/users/me/messages?maxResults=1&access_token={ACCESS_TOKEN}
Run Code Online (Sandbox Code Playgroud)

回复

{
 "messages": [
  {
   "id": "158d822014b7887b",
   "threadId": "158d822014b7887b"
  }
 ],
 "nextPageToken": "17683191771541399341",
 "resultSizeEstimate": 2
}
Run Code Online (Sandbox Code Playgroud)

然后得到消息:

要求

GET https://www.googleapis.com/gmail/v1/users/me/messages/158d822014b7887b?format=metadata&access_token={ACCESS_TOKEN}
Run Code Online (Sandbox Code Playgroud)

回复

{
 "id": "158d822014b7887b",
 "threadId": "158d822014b7887b",
 "labelIds": [
  "UNREAD",
  "CATEGORY_SOCIAL",
  "INBOX"
 ],
 ...
}
Run Code Online (Sandbox Code Playgroud)

您可以看到该消息labelId的值为UNREAD。如果消息没有 this labelId,则读取它。

var isRead = message.labelIds.indexOf("UNREAD") === -1;
Run Code Online (Sandbox Code Playgroud)