Paw*_*wel 12 .net gmail imap mailkit
到目前为止,我很高兴使用类似于以下的方法连接到我的 Gmail 帐户:
\npublic async Task<IEnumerable<MimeMessage>> GetMessagesAsync()\n{\n using var imapClient = new MailKit.Net.Imap.ImapClient();\n var secureSocketOptions = SecureSocketOptions.Auto;\n if (useSsl) secureSocketOptions = SecureSocketOptions.SslOnConnect;\n await imapClient.ConnectAsync(host, port, secureSocketOptions);\n\n await imapClient.AuthenticateAsync(login, password);\n\n await imapClient.Inbox.OpenAsync(FolderAccess.ReadOnly);\n\n var uids = await imapClient.Inbox.SearchAsync(SearchQuery.All);\n\n var messages = new List<MimeMessage>();\n foreach (var uid in uids)\n messages.Add(await imapClient.Inbox.GetMessageAsync(uid));\n\n imapClient.Disconnect(true);\n\n return messages;\n}\nRun Code Online (Sandbox Code Playgroud)\n自 2022 年 5 月 30 日起,这不再可能,因为对“不太安全的应用程序”的支持已被禁用:
\n\n\n为了确保您帐户的安全,从 2022 年 5 月 30 日起,\xe2\x80\x8b\xe2\x80\x8bGoogle 不再支持使用要求您仅使用您的帐户登录 Google 帐户的第三方应用或设备。用户名和密码。
\n
现在如何将 Mailkit 与 Gmail 结合使用?
\nJai*_*ime 28
停用不太安全的应用程序会阻止您直接使用用户名和密码登录,但不会阻止您为应用程序生成特定密码。现在,您将使用为特定应用程序生成的密码登录,而不是使用 Google 密码登录。
解决方案很简单,不需要太多改变:
在您的 Google 帐户中启用两步验证。需要执行此步骤,因为 Google 仅允许为启用了两步验证的帐户上的应用程序生成密码。
转到生成应用程序密码 ( https://myaccount.google.com/apppasswords ) 并为您的应用程序生成密码。
只需使用您的 Gmail 用户名 ( your_mail@gmail.com) 和应用程序中生成的密码即可c#。
| 归档时间: |
|
| 查看次数: |
8251 次 |
| 最近记录: |