API Gmail: невозможно запросить непрочитанное сообщение
Я публикую здесь, потому что я учусь использовать 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), но если я обновлю свой сайт, загрузится предыдущее сообщение как непрочитанное.
Это сводит меня с ума, потому что это сработало два дня назад, а теперь просто нет.
Есть идеи?
РЕДАКТИРОВАТЬ
Очистка истории между каждым запросом решает проблему, но не могу понять, почему...
Я пробовал эти решения, но ни одно из них не работало
1 ответ
Попробуйте этот код:
var request = gapi.client.gmail.users.messages.list({
'userId': 'me',
'labelIds': 'UNREAD'
});
request.execute(function(response) {
console.log(response);
});