PHP IMAP - 电子邮件必须有 messageid 吗?

标签 php imap gmail-imap

我正在使用 PHP 和 IMAP 从 Gmail 中检索电子邮件;但是,有些电子邮件没有 messageid。不是所有消息都应该有一个 messageid 吗?

我需要一个唯一的 ID 供引用,所以我不确定没有它还能如何跟踪电子邮件。

我做错了什么吗?

例如这是我收到的电子邮件标题

 [date] => Sun, 06 Nov 2011 21:21:56 -0500
    [subject] => Daylight Saving Time?  Chili's Saving Time!
    [to] => -------@gmail.com
    [message_id] => 
    [from] => ChilisCorp@---.com
    [sender] => ChilisCorp@----.com
    [reply_toaddress] => ChilisCorpeclubsupport@---.com
    [size] => 14385
    [msgno] =>  156
    [status] => Unread

谢谢

最佳答案

我遇到过的任何 MTA 都会添加一个 Message-ID(如果 MTA 不存在的话)。但是,如果您需要跟踪消息或对它们进行线程化,则需要设置 Message-IDReferences header 和 In-Reply-To header 使用先前的 Message-ID 的值将消息关联在一起。

References 包含回复链中以前的 Message-ID 值的列表,In-Reply-To 包含 Message-ID 当前消息是对其的直接回复。

请注意,根据 RFC-2822 规范,a Message-ID is technically not required .行为良好的 MTA 通常包括一个,但下面的一些评论者描述了消息 ID 不存在的情况,导致消息传递客户端失败。

关于PHP IMAP - 电子邮件必须有 messageid 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8513165/

相关文章:

php - 在php imap中获取X-Mailer属性

php - 在 php 网站上集成 IMAP

node.js - 使用 node-imap 和 mailparser 解析的 gmail 不正确

java - 关于在 Gmail 中实现搜索功能

c# - 使用 AE.NET 从 gmail 获取附件不起作用

php - 如何防止零作为值记录在数据库中

PHP - 使用表和 JQuery

Python:如何通过 IMAP 将带有 BCC 收件人的电子邮件草稿存储到 Exchange Server?

php - WooCommerce 在发布产品时触发操作并创建日志文件

php - 通过 CSV 内容 DELETE FROM 查询 MySQL