TMail对象缺少BCC信息

时间:2009-11-02 14:32:48

标签: ruby-on-rails actionmailer

我正在运行一项cron作业,每分钟检查一次Gmail帐户上的新电子邮件。如果找到任何新邮件,它会触发一个以如下开头的接收函数:

  def receive(email)     
    # REPORT SOME INFORMATION ABOUT INBOUND EMAIL RECEIPT
    puts "SUBJECT: #{email.subject}" 
    puts "#{email.class}"
    puts email.to.inspect
    puts email.bcc.inspect
    puts email.from.inspect
    ...
  end

我想只处理在TO或BCC字段中处理系统的电子邮件。这个想法是用户不应该向其他人透露各种目的地电子邮件地址。

问题是,此函数似乎无法从作为“email”参数传递给此对象的TMail对象中提取BCC信息。 TO地址通过罚款,但不是BCC。

任何人都知道为什么会出现这种情况?

1 个答案:

答案 0 :(得分:1)

TL; DR版本:作为电子邮件客户端,您无法可靠地检索BCC字段。

当然它缺少BCC领域。一旦用于指导电子邮件,它就会从邮件中删除。

BCC指盲碳复制。并且用于复制人们的消息,而不会将其地址发送给接收消息的其他人。如果收到的电子邮件仍然有此信息,则无法满足其目的。

您应该阅读有关寻址的RFC 2822部分。

您所询问的内容未明确定义并且依赖于实现。邮件用户代理(Outlook / Thunderbird / Gmail /等)或邮件传输/提交代理(将邮件路由到您的任何程序)可能会在您获取之前剥离所需的数据。

相关问题