1

我目前正在尝试设计一个允许用户向其他用户发送电子邮件的 PHP webapp。然后收件人可以回复电子邮件,消息将在 web 应用程序中更新。

现在要跟踪每个单独的用户消息,我想在电子邮件中添加一个自定义标题(即会话 ID)。当收件人在其电子邮件客户端中回复电子邮件时,是否会保留自定义邮件标头(即会话 ID)?

每分钟都会执行一个 cron 作业,打开一个 POP3 流到 Web 服务器以检索新电子邮件(用户可能使用他们的邮件客户端发送的回复)以更新我的数据库。

我不确定这是否是设计此类应用程序的好方法。有什么建议么?

编辑:另外,我肯定想知道如何去掉回复中引用的消息?

4

2 回答 2

4

您不能依赖保留邮件标头 - 很大程度上取决于单个邮件客户端来决定包含哪些内容。

我通常会将对话 ID 放在主题的 [] 括号内,这样可以很容易地用正则表达式解析出来。

于 2012-03-03T11:14:53.090 回答
0

每条消息都已包含Message-ID字段,邮件客户端使用该字段来创建In-Reply-To字段的内容。

标准之后的通常方法不是依靠用户的邮件客户端正确设置回复字段吗?据我所知,所有电子邮件客户端都正确使用它。(即使根据这个线程Outlook 可能偶尔会出现错误?)

所以我认为,电子邮件已经具有此功能,您不必担心创建自定义邮件标题条目和无法预测的邮件客户端行为。

编辑:我记得一位朋友告诉我他对有多少人从主题字段的 [ ] 括号中删除甚至编辑这些标签感到沮丧。此外,这似乎是一个非常肮脏的解决方法,您的所有软件都需要处理它而不反对用户更改它的能力=>实际上是不可能的。

编辑:我认为很难可靠地删除回复中引用的消息,因为每个邮件客户端处理它的方式不同。

于 2018-11-19T15:36:58.147 回答