问题标签 [mailkit]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2368 浏览

c# - 如何在不下载附件的情况下获取邮件正文

我正在使用名为:MailKit 的 IMAP4 客户端。它工作得很好,但我在不下载附件的情况下获取邮件正文时遇到问题。我想显示邮件的正文以及有哪些附件,但前提是用户单击我想实际下载附件的附件。

我试过了:

但这得到了全部信息。

也试过:

但这又会下载附件。

0 投票
1 回答
2806 浏览

c# - 如何使用 MailKit 删除 Gmail 中的邮件(不移动到垃圾箱)

我正在尝试使用 MailKit 库开发 ImapClient 。

如何从 Gmail 帐户中永久删除邮件,而不是简单地将它们移动到垃圾箱文件夹?

0 投票
3 回答
13213 浏览

c# - 使用 MailKit / MimeKit 从电子邮件中删除附件

我正在使用 MailKit 库来处理电子邮件,它运行良好。但是,我正在尝试将电子邮件拆分为其组成文件 a)主要电子邮件(无附件) b)单独的附件文件,以存储在文件系统上。

我可以单独保存附件,但似乎无法从电子邮件正文代码中删除它们。即他们得到与主要电子邮件一起被保存,因此复制数据。:/

我试过了:

也试过:

如果有人可以提供帮助,我将不胜感激。

解决方案实施仅供参考:

并且只获取附件:

0 投票
2 回答
10715 浏览

c# - 使用 MailKit 库保存附件?

我正在尝试学习如何使用 MailKit 库,但我正在努力检索附件。到目前为止,我的代码将打开一个邮箱,浏览每条消息并存储发件人、主题、正文、日期等数据,但我无法处理附件。

我曾尝试使用在此处、github 和其他网站上找到的其他人的解决方案,但我仍然不明白他们在他们的代码中做了什么,当我接近让解决方案正常工作时,它会导致更多错误,所以我感到压力并删除所有代码。我并不是要显得懒惰,但如果有人能解释我如何做到这一点,我会很高兴。我基本上是在尝试为 Web 表单应用程序构建邮件客户端。

下面是我的代码,所以你可以看到我相当无能:)

0 投票
1 回答
7084 浏览

c# - c# MailKit how to delete an email from mail server (IMAP)

I've found this:

I don't know how to obtain index or uid to use here. My client works like this:

Also int I is not the index. message.MessageID not equal to UID. Where is my mistake?

0 投票
1 回答
1023 浏览

c# - MailKit 删除电子邮件 Xamarin C#

我在 monotouch xamarin 上使用 mailkit。我正在创建一个将接收电子邮件的应用程序(电子邮件客户端)。我让用户选择是否使用 Pop3 或 IMAP 连接协议。我的问题是我找不到关于他如何删除 Pop3 和 IMAP 上的消息的解决方案。我曾尝试使用此代码:

来自这篇文章:MailKit 从 gmail 中删除单个消息, 但似乎对我不起作用。我用于捕获 Pop3 帐户电子邮件的代码是

0 投票
1 回答
465 浏览

c# - 跨多个功能持久化 MailKit 客户端

如果这是一个“明显”的问题,我提前道歉。

我对 MailKit 尤其陌生,对 C# 也很陌生。

要打开一个新的 IMAP 连接,我使用以下代码,直接取自 MailKit 的介绍性 GitHub 说明:

我有一个包含与电子邮件管理相关的功能的类。

我希望 ImapClient 'client' 和 ImapClient.Inbox 'inbox' 实例在我的班级中持续存在,以便每个函数都可以访问收件箱,而无需运行上面的连接过程。我怎样才能让这些实例在我的课堂上持续存在?

换句话说,我想运行一次连接过程(最好在声明我的类的实例时),然后让所有后续方法通过这个初始连接过程访问收件箱。

提前致谢。

0 投票
2 回答
8370 浏览

c# - MailKit : 从 IMAP 服务器获取新邮件通知

我需要创建一个连接到 IMAP 服务器并侦听新邮件的服务(或控制台)应用程序。我目前正在尝试使用 MailKit,但在尝试从文档中弄清楚如何完成此操作时遇到了麻烦。

我最接近的就是从这里文章。据我所知,这篇文章将连接设置为空闲模式,并偶尔发送 NoOP 以尝试保持连接处于活动状态。我不完全清楚的是如何接收新邮件通知。

MailKit 文档似乎表明有可用的警报事件。我已经尝试过使用它,但这似乎并不能解决任何问题。

这是我尝试过的:

0 投票
1 回答
601 浏览

mailkit - 使用 MailKit 检索 Imapfolder 中的 UID 列表?

我想发送命令“UID FETCH ALL”。这给了我这个文件夹的所有 uid。我找不到此命令的任何预定义方法。

我想在 imapfolder 中检索电子邮件的标头,并将它们与其 UID 一起保存到本地数据存储中,这样下一次,我可以获取所有 UID,丢弃小于数据存储中最高 UID 的 UID,然后开始检索这些标头. 此外,我可以将我的数据存储中的 UID 范围与命令检索的列表进行比较,并检查是否有任何 UID 未能持久保存到我的本地数据存储中,然后尝试再次接收它们。(假设 UID 的检查与 UIDValidity 结合使用)。

我使用此策略来确保所有标头都在我的本地数据存储中(或者我的日志记录告诉我我无法检索/保留哪个 UID)如果有另一种(可能更好的)策略可以使用 MailKit 完成此操作,请指出正确的方向.

更新:找到解决方案。使用'inbox.Fetch(0, -1, MessageSummaryItems.UniqueId)'

0 投票
1 回答
335 浏览

c# - 如何使用 MimeKit 添加文本页脚

我尝试使用 MimeKit 为电子邮件添加页脚,但添加的页脚显示为电子邮件的附件,而不仅仅是附加到邮件的文本。

使用 MimeKit 添加页脚的正确方法是什么?