如何从 google gmail js api 获取小于 10 MB 的消息?

Posted

技术标签:

【中文标题】如何从 google gmail js api 获取小于 10 MB 的消息?【英文标题】:How to get the message which is having less than 10 MB size from google gmail js api? 【发布时间】:2018-11-18 09:29:04 【问题描述】:

我正在我的应用程序中进行一些端点调用。我只想获取大小小于 10 MB 的电子邮件。那么有没有办法将任何查询参数传递给 gmail 端点,所以它只会给我预期的结果?

https://developers.google.com/gmail/api/v1/reference/users/messages/get

此网址包含获取消息的文档,但没有写如何限制数据。

这是性能提示(https://developers.google.com/gmail/api/guides/performance),但这里也不清楚。

请帮帮我。

提前致谢。

【问题讨论】:

【参考方案1】:

这个答案怎么样?您可以使用gmail.users.messages.list 的查询按大小检索邮件。当您要检索小于 10 MBytes 的邮件时,请使用smaller:10M 作为查询。如果您要检索大小超过 10 MBytes 的邮件,请使用larger:10M。通过使用此查询检索消息 ID,您可以使用 gmail.users.messages.get 按 ID 检索消息。

node.js 的示例脚本如下。在此示例中,可以检索大小小于 10 MBytes 的邮件的消息 ID。

示例脚本:

const gmail = google.gmail(version: 'v1', auth);
gmail.users.messages.list(
  userId: 'me',
  q: 'smaller:10M',
, (err, data) => 
  if (err) return console.log('The API returned an error: ' + err);
  data.messages.forEach((e) => console.log(e.id));
);

参考资料:

gmail.users.messages.list 您也可以在此页面测试查询。 Search operators you can use with Gmail

如果我误解了你的问题,我很抱歉。

【讨论】:

非常感谢@Tanaike。它对我有用,你以完美的方式回答了我的问题。再次感谢。 @Shravan Jain 欢迎您。我很高兴你的问题得到了解决。也谢谢你。

以上是关于如何从 google gmail js api 获取小于 10 MB 的消息?的主要内容,如果未能解决你的问题,请参考以下文章

如何通过 Gmail API 从 .net 核心控制台应用程序发送电子邮件?

尝试使用 Google.Apis.Gmail 从 asp.net core web api 应用程序从谷歌工作区发送电子邮件时出错

Google 工作区:通过 API 激活 gmail

如何使用 google 联系人 api 在 iOS 应用程序中获取 gmail 联系人?

从 Gmail API 获取电子邮件的直接 URL(列出消息)

如何获取虚拟谷歌访问令牌来测试 oauth google api