Gmail API:无法请求未读邮件

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)
}

回复提示未找到此邮件标签“UNREAD”(在Gmail网页上已标记为已读),但如果我刷新我的网站,它会将先前的邮件标记为未读。这让我很压抑,因为两天前还能用,现在就不行了。你有什么想法吗?
编辑
每次请求之间清除历史记录可以解决问题,但不知道为什么……
我尝试了这些方案,但都没有起作用 Disable gmail api request caching

似乎添加一个带有以下内容的 .htaccess 文件:SetEnv session.use_cookies='0';解决了这个问题。 - Louis Kraemer
1个回答

0

尝试这段代码:

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

request.execute(function(response) {    

    console.log(response);

});

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接