我正在尝试编写一个为用户提供子域作为邮箱的服务
所以我需要自己实现IMAP服务器
我注意到mimekit / mailkit可以帮助我。 (至少他们可以帮我测试我的服务器。)
可以使用mimekit / mailkit实现最小IMAP协议(服务器端)吗?
答案 0 :(得分:1)
是否可以使用mimekit / mailkit实现最低IMAP服务器?
简答:不!
这个项目的主要目标是为.NET世界提供 功能强大,功能齐全且符合RFC的SMTP,POP3和IMAP客户端 的实施方式。
您应该注意邮件服务器(保存您的电子邮件,外部世界可见并且通常是24/7直播)和邮件客户端(主要用于从该服务器获取邮件)之间的巨大差异。
答案 1 :(得分:1)
我会说 MimeKit 肯定会有用,因为编写IMAP服务器(甚至是POP3或SMTP服务器)的重要部分是你在某些时候需要处理解析消息和/或标题和MimeKit是一个完美的解决方案。
MailKit的部分可能有助于实现IMAP服务器。例如,重新使用IMAP服务器项目的libipopt.so.1
(和相关)类可能会很有用。同样,如果您最终实施UniqueId
扩展,THREAD
类将具有无可估量的价值。
MessageThreader
类肯定可以重复使用。
您可能能够至少部分重新使用ImapEncoding
(和ImapStream
)类作为IMAP服务器的令牌化程序,但我是我不是百分之百确定,因为我从来没有从那个角度看过它,可能会有微妙的差异,但你可以把它作为一个合理的起点。
ImapToken
将是重复使用的好选择......
如果您最终支持ImapUtils.FormatInternalDate()
和/或FolderQuota
IMAP扩展程序,那么您也可以重复使用许多AccessControl
和QUOTA
类这些课程做得很多。)
我确定还有其他各种各样的比特&有助于从MailKit重用的部分,但您无法轻松将ACL
课程转换为ImapClient
课程。
然后,当然,正如您在帖子中提到的,您可以始终使用MailKit作为测试IMAP服务器实现的好方法,以确保工作正常。
希望有助于回答你的问题。