GMail API - messages().list() 仅返回消息 ID
Posted
技术标签:
【中文标题】GMail API - messages().list() 仅返回消息 ID【英文标题】:GMail API - messages().list() only returns message IDs 【发布时间】:2018-02-22 20:12:59 【问题描述】:list() 方法仅返回消息 ID 列表,没有任何其他消息元数据。 有SO帖子from 2014和2016,但official documentation声明响应是user.messages resource的列表...
文档是错误的还是有其他方法可以做到这一点?我知道将整个消息带入“列表”调用对于 REST API 调用来说效率不高 - 但也许返回“一些”元数据是有意义的(例如 service.users().messages().get(.. ., format='metadata')) 而不是调用 list() 然后为每条消息调用 get(..., format='metadata')
谢谢!
M
【问题讨论】:
需要列出消息id,然后分别获取每条消息。可悲的是,没有办法解决这个问题。如果您收到batch request 中的所有消息,则可以将请求总数从1 + N of messages
减少到2。
@Tholle 好答案
谢谢@Tholle 我想,只是希望文档是正确的;)
是的,显然文档不正确。
【参考方案1】:
gmail.users.messages.get(
auth: auth,
userId: 'me',
id: messageid,
format: "raw"
, function (err, response)
);
您必须使用每个 messageid 调用上述 api。响应将是相应电子邮件的原始数据
【讨论】:
以上是关于GMail API - messages().list() 仅返回消息 ID的主要内容,如果未能解决你的问题,请参考以下文章
Gmail API:在使用查询执行 messages.list 时,有没有办法获取 RFC822 消息 ID?
Gmail REST API 获取消息函数返回无效的 historyId