2015-07-16 2 views
1

Я использую метод Users.messages:modify для применения меток к сообщениям электронной почты, однако я должен обновить страницу до того, как метки, которые я применяю, программно отображаются в пользовательском интерфейсе gmail.API Gmail: обновление асинхронной метки/приложение

Желаемое действие сродни тому, если вручную выбрать сообщение gmail, а затем применить метку из аппликатора меток раскрывающегося списка в верхней части экрана gmail: метка применяется асинхронно. Возможно ли это сделать программно?

Код

var applyLabel = function (gapiRequestURL, labelIdsArr) 
{ 

    $.ajax({ 
    url: gapiRequestURL, 
    method: "POST", 
    contentType: "application/json", 
    data: JSON.stringify({ 
     addLabelIds: labelIdsArr 
    }), 
    success: function(msg){ 
     // alert(JSON.stringify(msg)); 
    }, 
    error: function(msg){ 
     alert("Error:" + JSON.stringify(msg)); 
    } 
    }) 
} 

var decideWhichLabelToApply = function(messageContentsArr){ 
    var testLabelOne = "Label_12" 
    var testLabelTwo = "Label_13" 
    var labelIdsArr = [] 

    for(var i=0; i < messageContentsArr.length; i++){ 
    var currentMessage = messageContentsArr[i] 
    var messageID = currentMessage.id 

    if (true){ 
     var labelModifyURL = "https://www.googleapis.com/gmail/v1/users/me/messages/" + messageID + "/modify?access_token=" + thisToken 
     labelIdsArr.push(testLabelOne) 
     applyLabel(labelModifyURL, labelIdsArr) 
    } 
    else { 
     var labelModifyURL = "https://www.googleapis.com/gmail/v1/users/me/messages/" + messageID + "/modify?access_token=" + thisToken 
     labelIdsArr.push(testLabelTwo) 
     applyLabel(labelModifyURL, labelIdsArr) 
    } 
    } 
} 

ответ

2

Не то, что я знаю. Веб-интерфейс Gmail делает некоторое ленивое кэширование и, похоже, не замечает особо хороших изменений в базовых данных (т. Е. От Inbox, IMAP, API и т. Д.). Я считаю, что не требуется полный браузер (F5) обновить, но, конечно же, нужно выполнить некоторые действия пользовательского интерфейса, такие как щелчок на ярлыках или нажатие значка обновления в веб-странице для обновления.

+0

Я задам ему вопрос и ссылку на него о том, возможно ли запуск кнопки обновления. Спасибо. –

+0

Вопрос re: запуск кнопки обновления: http://stackoverflow.com/questions/31464304/gmail-api-triggering-in-webpage-refresh –

Смежные вопросы