我可以使用gmail api和c#从gmail读取消息吗? [英] Can I read messages from gmail using gmail api and c#?
本文介绍了我可以使用gmail api和c#从gmail读取消息吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想使用c#和gmail api阅读我的gmail帐户中的所有消息.
我可以这样做吗?
我在 Gmail API 中阅读了很多文章,但看不到消息.
我也想阅读邮件正文或标头.
如果有人可以帮助我,我将非常高兴:)
I want read all messages in my gmail account using c# and gmail api.
Can I do this?
I read a lot of articles in Gmail API, but i couldn't read messages.
Also I want to read a body of messages or header.
I will be very glad if someone can help me :)
我使用以下代码段:
public static List<Message> ListMessages(GmailService service, String userId)
{
List<Message> result = new List<Message>();
UsersResource.MessagesResource.ListRequest request = service.Users.Messages.List(userId);
do
{
try
{
ListMessagesResponse response = request.Execute();
result.AddRange(response.Messages);
request.PageToken = response.NextPageToken;
}
catch (Exception e)
{
Console.WriteLine("An error occurred: " + e.Message);
}
} while (!String.IsNullOrEmpty(request.PageToken));
return result;
}
这:
foreach (var item in ListMessages(service,"me"))
MessageBox.Show(item.Snippet);
但是结果是我的消息框为空.
But in a result I have empty message box.
推荐答案
对我有用
var inboxlistRequest = service.Users.Messages.List("your-email-address");
inboxlistRequest.LabelIds = "INBOX";
inboxlistRequest.IncludeSpamTrash = false;
//get our emails
var emailListResponse = inboxlistRequest.Execute();
foreach (var mail in emailListResponse.Messages)
{
var mailId = mail.Id;
var threadId = mail.ThreadId;
Message message = service.Users.Messages.Get("your-email-address", mailId).Execute();
Console.WriteLine(message.Snippet);
}
这篇关于我可以使用gmail api和c#从gmail读取消息吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文