如何在 CentOS 7 中以编程方式访问 Dovecot 邮箱的内容?

如何在 CentOS 7 中以编程方式访问 Dovecot 邮箱的内容?

postfix我刚刚在服务器dovecot上设置CentOS 7使用本教程。我能够使用 成功创建邮件记录echo "TEST" | mail -s "testmail" youruser@localhost && tail -f /var/log/maillog但我如何访问和使用生成的电子邮件文件?

我需要配置一个java程序来处理传入的电子邮件,包括分解和处理附件文件。这可以使用 mysql 或简单的原始文件来完成。但我需要知道java程序在哪里查找邮件。

按照教程,我设置mail_location = maildir:~/Maildir/etc/dovecot/conf.d/10-mail.conf.但是当我输入时cd /home/youruser/Maildir,终端会回复-bash: cd: Maildir: Permission denied。类似地,sudo cd /home/youruser/Maildir只会导致终端忽略该命令并保留在之前所在的目录中。

答案1

一般来说,您不必直接操作 maildir。 Maildir 不仅是一个包含文件的目录树,而且是一组索引和其他补充文件。当您在子目录中创建文件时./new,至少必须重新创建相应文件夹的索引。

推荐的方法是使用doveadm实​​用程序创建文件夹和子文件夹并订阅它们。如果您想向 maidir 注入一些消息,您必须使用deliver以正确方式执行注入的实用程序。

如果你需要读取maildir的内容,你必须使用一些符合IMAP协议的IMAP库。我不熟悉 Java,但我绝对确信存在不止一个具有所需功能的库。

不建议对 maildir 进行原始访问。

http://wiki2.dovecot.org/Tools/Doveadm

http://wiki2.dovecot.org/LDA

相关内容