假设我正在使用任何服务提供商发送 1000 封电子邮件。有什么方法可以知道哪些电子邮件无法发送,可能是因为电子邮件 ID 错误?
假设我使用 gmail 服务提供商向“rohit1234@gmail.com”发送了一封电子邮件,并说像“rohit1234@gmail.com”这样的 ID 不存在。所以这不会被交付。我如何从服务提供商处得知这封电子邮件因任何原因未送达?
假设我正在使用任何服务提供商发送 1000 封电子邮件。有什么方法可以知道哪些电子邮件无法发送,可能是因为电子邮件 ID 错误?
假设我使用 gmail 服务提供商向“rohit1234@gmail.com”发送了一封电子邮件,并说像“rohit1234@gmail.com”这样的 ID 不存在。所以这不会被交付。我如何从服务提供商处得知这封电子邮件因任何原因未送达?
您要查找的内容称为“未送达报告”。
链接的 Wikipedia 文章包括RFC 3464(和 RFC 6522)的链接和示例,其中记录了标准化的报告格式。较旧的邮件服务器是在标准化之前构建的,因此您最终将为此构建大量特殊代码。Lotus Notes、旧版本的 Exchange,尤其是 qmail 是最严重的违规者,其中有很多。
如果您真的想自己做这件事,而不是像评论中建议的那样使用第三方服务,那么我强烈建议您使用现有的邮件阅读库。我使用Zend 框架 1.x 版中的Zend Mail取得了一定程度的成功。它公开了每条消息和每条消息中的 MIME 组件,这使得报告块的检测非常简单。