开源 .NET MIME 创建和解析库
.NET MIME 创建和解析器库,用于消息加密、解密和签名以及使用 S/MIME 或 OpenPGP 标准验证数字签名。
MimeKit 入门
安装 MimeKit 的最简单方法是通过 NuGet。在 Visual Studio 的包管理器控制台中,输入以下命令
您可以使用 pip 安装它。
通过 NuGet 安装
Install-Package MimeKit
通过 GitHub 安装
git clone --recursive https://github.com/jstedfast/MailKit.git
.NET API 创建新消息
开源 API MailKit 库使软件开发人员能够使用几个简单的命令创建 MIME 消息。 TextPart 是具有文本媒体类型的叶节点 MIME 部分。 TextPart 构造函数的第一个参数指定媒体子类型,在本例中为普通类型。您可能熟悉的另一种媒体子类型是 HTML 子类型。获取和设置 MIME 部分的字符串内容的最简单方法是 Text 属性。
用于创建消息的开源 API - C#
var message = new MimeMessage();
message.From.Add(new MailboxAddress("fred", "This email address is being protected from spam-bots. You need JavaScript enabled to view it."));
message.To.Add(new MailboxAddress("frans", "This email address is being protected from spam-bots. You need JavaScript enabled to view it."));
message.Subject = "FileFormat ";
message.Body = new TextPart("plain")
{
Text = "File Format Developer Guide"
};
使用 .NET API 生成带有附件的消息
MailKit API 提供了在 .NET 应用程序中生成带有附件的消息的功能。附件与任何其他 MimePart 一样,主要区别在于它们包含一个包含附件值的 content-disposition 标头,而不是内联或根本没有 Content-Disposition 标头。要发送消息的文本/HTML 和文本/纯文本版本,您需要为每个部分创建一个 TextPart,然后将它们添加到多部分/替代。
使用 C# 免费生成电子邮件附件
var message = new MimeMessage();
message.From.Add(new MailboxAddress("fred", "This email address is being protected from spam-bots. You need JavaScript enabled to view it."));
message.To.Add(new MailboxAddress("frans", "This email address is being protected from spam-bots. You need JavaScript enabled to view it."));
message.Subject = "FileFormat";
var path = "image.png";
var body = message.Body = new TextPart("plain")
{
Text = "File Format Developer Guide"
};
// create an image attachment for the file located at path
var attachment = new MimePart("image", "gif")
{
Content = new MimeContent(File.OpenRead(path), ContentEncoding.Default),
ContentDisposition = new ContentDisposition(ContentDisposition.Attachment),
ContentTransferEncoding = ContentEncoding.Base64,
FileName = System.IO.Path.GetFileName(path)
};
// now create the multipart/mixed container to hold the message text and the
// image attachment
var multipart = new Multipart("mixed")
{
body,
attachment
};
// now set the multipart/mixed as the message body
message.Body = multipart;
使用 S/MIME 加密或解密消息
开源 MailKit API 提供了使用 S/MIME 加密上下文加密消息的功能。 S/MIME 使用 application/pkcs7-mime MIME 部分来封装加密内容。使用消息文本和一些图像附件创建消息正文。之后,您可以使用自定义 S/MIME 加密上下文加密消息正文。