如何从消息列表中获取'payload'属性? Gmail API
问题描述:
我是新来的节点,我想获取有关我的Gmail邮件的信息,例如谁写了邮件和文本。 我遵循快速入门示例并编写以下代码,但输出中只有'id'和'threadId'字段。如何从消息列表中获取'payload'属性? Gmail API
function listMessages(auth) {
var gmail = google.gmail('v1');
gmail.users.messages.list({
auth: auth,
userId: 'me'
}, function(err, response) {
if (err) {
console.log('The API returned an error: ' + err);
return;
}
var messages = response.messages;
if (messages.length == 0) {
console.log('No messages found.');
} else {
console.log('Messages:');
for (var i = 0; i < messages.length; i++) {
var message = messages[i];
console.log(message);
}
}
});
}
有人可以解释我吗?谢谢。
答
function getMessage(userId, messageId, callback) {
var request = gapi.client.gmail.users.messages.get({
'userId': userId,
'id': messageId
});
request.execute(callback);
}
添加 “me
” 作为userId
和messageId
申请添加您的留言ID。其他字段是可选的。
答
messages.list()
API仅通过设计返回消息ID和线程ID。如果您需要了解这些消息的详细信息,则需要另一个API调用messages.get()
来获取每条消息的具体详情。
API参考: https://developers.google.com/gmail/api/v1/reference/users/messages/get
虽然这工作,你可能想看看的GMail的批量操作,允许收取邮件的细节在一个呼叫(有限制虽然)。
类似的查询已经在这里找到答案在SO: