3

我在这里发帖是因为我正在学习使用 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)
}

响应给出此邮件不存在标签“未读”(并且它在 Gmail 网络中标记为已读),但如果我刷新我的网站,它将先例邮件加载为未读。

这让我发疯,因为它在两天前有效,现在却不行了。

有任何想法吗 ?

编辑

清除每个请求之间的历史记录正在解决问题,但无法弄清楚为什么......

我尝试了这些解决方案,但都没有工作 禁用 gmail api 请求缓存

4

1 回答 1

0

试试这个代码:

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

request.execute(function(response) {    

    console.log(response);

});
于 2016-08-18T05:51:28.300 回答