列出与列出的标签之一匹配而不是与列出的所有标签匹配的线程
List threads that match one of labels listed rather than match all labels listed
我正在从 Gmail API 获取线程,作为 labelIds
字段,我提供了带有标签的数组。它将 return 仅匹配所有引用的标签的线程:
Only return threads with labels that match all of the specified label IDs. (string)
但是,我想获取至少与所列标签之一相匹配的所有邮件。
这是我的功能:
gmail.users.threads.list(
{auth: authClient, userId: 'me', labelIds: ["DRAFT","INBOX"]},
function(err, resp){
if (err) {
console.log(err);
return;
}
console.log(resp);
});
有没有办法通过单个 API 调用告诉 API 我希望所有线程至少匹配一个页面的给定 labelIds 中的一个?
如果您找到合适的解决方案,请post回答,同时:
我猜这是不可能的,因为 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
方法。
我正在从 Gmail API 获取线程,作为 labelIds
字段,我提供了带有标签的数组。它将 return 仅匹配所有引用的标签的线程:
Only return threads with labels that match all of the specified label IDs. (string)
但是,我想获取至少与所列标签之一相匹配的所有邮件。
这是我的功能:
gmail.users.threads.list(
{auth: authClient, userId: 'me', labelIds: ["DRAFT","INBOX"]},
function(err, resp){
if (err) {
console.log(err);
return;
}
console.log(resp);
});
有没有办法通过单个 API 调用告诉 API 我希望所有线程至少匹配一个页面的给定 labelIds 中的一个?
如果您找到合适的解决方案,请post回答,同时:
我猜这是不可能的,因为 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
方法。