所以我用两个方法checkInbox()和getMail()创建了一个Check类。
checkInbox()检索所有邮件,而getMail(msgId)将使用输入ID检索邮件。
checkInbox()工作正常,但getMail()方法提供的输出与checkInbox()相同,即列出所有邮件,而不返回请求的邮件。
class Check{
constructor(auth){
this.me = 'mygmailid';
this.gmail = google.gmail({version: 'v1', auth});
this.auth = auth;
}
checkInbox(){
this.gmail.users.messages.list({
userId: this.me
}, (err, res) => {
if(!err){
console.log(res.data);
}
})
}
getMail(msgId){
this.gmail.users.messages.get({
'userId': this.me,
'id': msgId
}, (err, res) => {
if(!err){
console.log(res);
}
});
}
}
var obj = new dem(auth);
obj.getMail('someRandomIdNumber');
我没有附加授权码,因为它可以正常工作。同样,导入和导出类也没有错误。
答案 0 :(得分:0)
这正是您要获取gmail消息应该执行的操作:
const response = await this.gmail.users.messages.get({
auth: this.oAuth2Client,
userId: this.gmailAddress,
id: messageId,
format: 'full'
})
您可以找到整个实现here。这是Gmail-API上的包装纸