Gmail API:无法请求未读邮件

时间:2016-08-10 14:05:28

标签: javascript api gmail read-unread

我在这里发帖是因为我正在学习使用Gmail API而且我最近遇到了一个问题。当我尝试使用以下代码列出未读消息时

var request = gapi.client.gmail.users.messages.list({
    'userId': 'me',
    'labelIds': 'INBOX',
    'q': 'is:unread'
});

我有时会得到正确的信息但有时却没有。这就像gmail api无法访问gmail的即时状态,只能每隔几分钟同步一次。

另一个例子是当我尝试将消息标记为已读

var request = gapi.client.gmail.users.messages.modify({
    'userId': 'me',
    'id': id,
    'removeLabelIds': ['UNREAD']
});
request.execute(function (response) {
    console.log(response)
}

响应表明此消息的标签“UNREAD”不存在(并且在Gmail网络中标记为已读取),但如果我刷新我的网站,则会将先前消息加载为未读。

这让我发疯,因为它在两天前工作,现在却没有。

有什么想法吗?

修改

清除每个请求之间的历史记录正在修复问题,但无法确定原因......

我试过那些解决方案,但都没有用 Disable gmail api request caching

1 个答案:

答案 0 :(得分:0)

试试这段代码:

var request = gapi.client.gmail.users.messages.list({
    'userId': 'me',
    'labelIds': 'UNREAD'
});

request.execute(function(response) {    

    console.log(response);

});