gpt4 book ai didi

java - 如何使 javax.mail 使用本地 "sendmail"二进制文件?

转载 作者:行者123 更新时间:2023-12-01 17:18:24 24 4
gpt4 key购买 nike

我正在使用 javax.mail 创建电子邮件并将其呈现为文本表示形式。在某些情况下,我不想使用 SMTP 转发这些结果,但例如将它们通过管道传输到 sendmail 二进制文件。这在 shell 脚本中似乎很常见,我也在 Perl 生态系统中遇到过这种情况。

javax.mail 本身或其他“插件”是否已经支持类似的功能?

我没有看到任何此类选项,只有 SMTP 或不同的网络相关协议(protocol)。不过,我们还可以通过扩展Transport来额外实现自定义传输。并在 javamail.providers 中注册它而不是 SMTP 。查看可用的源代码,我看到许多主机、端口、URL、已建立的连接等概念,这些概念不太适合使用管道进行本地通信。我想知道是否能够覆盖默认行为,从而根本不工作太特定于网络。

那么,这种方法是否适用于与网络无关的传输,或者“传输”根本就不是这样设计的?

如果我已经在使用 javax.mail,那么尽可能合理地将任何自定义与其集成可能是个好主意。

最佳答案

您应该能够编写自己的传输实现,使用管道将消息发送到本地 sendmail,但使用 SMTP 将其发送到本地 sendmail 守护程序要容易得多;只需将其发送到本地主机即可。

关于java - 如何使 javax.mail 使用本地 "sendmail"二进制文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61344937/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com