14

contact form在一个网站上有一个(一般形式:名称电子邮件主题消息),其中使用谷歌应用程序smtp 将邮件发送给管理员。
目前如果管理员想直接选择回复选项回复邮件,该人回复的收件人字段将自动填写发件人地址。

我不想问的是,是否有任何标准化的方法可以通过邮件传递一些额外的信息,这些信息将定义对邮件的任何回复都应该发送到这个地址而不是发件人的地址?

这个选项似乎确实有一点机会,因为它可能会由于垃圾邮件发送者而导致一些问题(他们可能会在他们的邮件中定义一个自定义回复字段,而一般用户可能不会看他们在哪里回复)。

因此,作为替代方案,我想找到一种方法来使用发件人的帐户创建一个过滤器,该过滤器从格式中找出回复电子邮件地址并转发邮件(这似乎不是一个好的解决方案,我不知道如何实现这个)。

我已经标记了 django,虽然这与此没有直接关系,因为我最终将通过 django 实现它。

4

4 回答 4

14

实际上有标准化的标头来指定响应标头:http ://cr.yp.to/immhf/response.html 。

就在 Django 中实现这一点而言,文档包含一个示例:

from django.core.mail import EmailMessage

email = EmailMessage(
    'Hello',
    'Body goes here',
    'from@example.com',
    ['to1@example.com', 'to2@example.com'],
    ['bcc@example.com'],
    headers = {'Reply-To': 'another@example.com'}
)

这解决了我的问题。

于 2011-01-05T04:54:24.283 回答
4

Reply-To 是标准的 SMTP 标头。

我目前找不到很好的参考资料,但在 Wikipedia 关于Email的文章中提到了它。

编辑:找到它:RFC 5322,第 3.6.2 节

于 2011-01-05T04:49:32.053 回答
2

RFC 说您可以指定多封电子邮件,这就是我想要的。想出了这个:

from django.core.mail import EmailMessage
headers = {'Reply-To': 'email@one.com;email@two.com'}
msg = EmailMessage(subject, html_content, EMAIL_HOST_USER, email_list, headers=headers)
msg.content_subtype = "html"
msg.send()

奇迹般有效。注意:EMAIL_HOST_USER 是根据 Django 文档电子邮件设置从您的设置文件中导入的。更多关于这里,搜索“回复”:https ://docs.djangoproject.com/en/dev/topics/email/

于 2014-02-28T18:04:33.647 回答
0

这也是如何使用回复

from django.core.mail import EmailMessage

email = EmailMessage(
    'Hello',
    'Body goes here',
    'from@example.com',
    ['to1@example.com', 'to2@example.com'],
    ['bcc@example.com'],
    reply_to=['another@example.com'],
    headers={'Message-ID': 'foo'},
)

阅读更多文档docs.djangoproject

于 2019-01-17T11:37:47.187 回答