我创建了一个 Web 表单,其中包含控件以使用添加按钮添加用户的姓名、出生日期、性别信息,一旦单击添加按钮,该信息就会进入数据库。但我有我的邮箱,例如。gmail 一些邮件正在收件箱中,其中包含与之前相同的信息(姓名、出生日期、性别等)。那么我可以将收件箱数据传输到我的数据库吗?
问问题
263 次
1 回答
0
是的你可以。
您可以利用许多库来简化检查 Gmail 帐户的过程。这里只是一个:http: //sourceforge.net/projects/hpop/
这是获取所有电子邮件的示例代码:
public static List<Message> FetchAllMessages(string hostname, int port, bool useSsl, string username, string password)
{
// The client disconnects from the server when being disposed
using (Pop3Client client = new Pop3Client())
{
// Connect to the server
client.Connect(hostname, port, useSsl);
// Authenticate ourselves towards the server
client.Authenticate(username, password);
// Get the number of messages in the inbox
int messageCount = client.GetMessageCount();
// We want to download all messages
List<Message> allMessages = new List<Message>(messageCount);
// Messages are numbered in the interval: [1, messageCount]
// Ergo: message numbers are 1-based.
// Most servers give the latest message the highest number
for (int i = messageCount; i > 0; i--)
{
allMessages.Add(client.GetMessage(i));
}
// Now return the fetched messages
return allMessages;
}
}
您仍然需要检查每一个并确定它是否对您的数据库有效,然后获取数据并将其插入数据库;但它应该非常简单(并且几乎与您已经在做的事情相同)
对于 GMail,您可以使用以下方式获取您的邮件:
List<Message> myMail = FetchAllMessages("pop.gmail.com", 995, true, "MyEmail@gmail.com", "mysupersecretpasswordshhhhh!");
于 2012-06-01T07:40:37.007 回答