【问题标题】:List threads that match one of labels listed rather than match all labels listed列出与列出的标签之一匹配的线程,而不是与列出的所有标签匹配
【发布时间】:2017-01-22 06:23:23
【问题描述】:

我正在从 Gmail API 获取线程,并且作为 labelIds 字段,我提供了带有标签的数组。它将仅返回与引用的所有标签匹配的线程:

仅返回标签与所有指定标签 ID 匹配的线程。 (字符串)

但是,我想获取至少与所列标签之一匹配的所有消息。

这是我的功能:

gmail.users.threads.list(
 {auth: authClient, userId: 'me', labelIds: ["DRAFT","INBOX"]}, 
 function(err, resp){
  if (err) {
    console.log(err);
    return;
  }
  console.log(resp);
});

有没有办法告诉 API 我希望所有线程至少与一个页面的给定 labelId 匹配一个 API 调用?

【问题讨论】:

    标签: javascript google-api gmail-api google-api-nodejs-client


    【解决方案1】:

    如果您找到合适的解决方案,请同时发布答案:

    我的猜测是这是不可能的,因为这不是 Gmail 收件箱的工作方式。无法同时预览多个标签的页面,除非您希望包含所有可能的标签。

    解决方法:

    var labels = ["INBOX","DRAFT"];
    
    for( let label of labels ) {
      gmail.users.threads.list(
       {auth: authClient, userId: 'me', labelIds: label}, 
       function(err, resp){
        if (err) {
          console.log(err);
          return;
        }
        console.log(resp);
      });//end(threads.list)
    }//end(for-of)
    

    基本上这会为每个标签分别调用list 方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-10-13
      • 2018-05-09
      • 2022-10-09
      • 2019-06-17
      • 1970-01-01
      • 1970-01-01
      • 2012-01-21
      • 2013-03-25
      相关资源
      最近更新 更多