getThreads()不读取线程中的所有电子邮件

时间:2016-06-12 17:55:48

标签: javascript

我在Gmail标签上发了4封电子邮件" MyLabel"。 - 第一个帖子有43封电子邮件 - 第二个帖子有1封电子邮件 - 第3个帖子有2封电子邮件 - 第4个帖子有1封电子邮件

当我使用以下代码时,似乎我只有4封电子邮件,因为我的输出(正确解析)只读取每个线程中的最后一封电子邮件而不是所有线程。我希望有47行输出而不是4行。

  var start = 0;
  var label = GmailApp.getUserLabelByName("MyLabel");
  var threads = label.getThreads();

  var sheet = SpreadsheetApp.getActiveSheet();
  var result = [];

  for (var i = 0; i < threads.length; i++) {
    var messages = threads[i].getMessages();

    var content = messages[0].getPlainBody();

请让我知道我做错了什么。

1 个答案:

答案 0 :(得分:0)

谢谢你,约翰!在我的线程循环中有一个messages.length-1循环是解决方案。我使用了以下内容,得到49行而不是4行。所以我认为它有效!!

for(var i = 0; i&lt; threads.length; i ++){     var messages = threads [i] .getMessages();

for (var j = 0; j <messages.length-1; j++) {

var content = messages[j].getPlainBody();