【问题标题】:How do I send an Email with no "to" address using Mail::Sender?如何使用 Mail::Sender 发送没有“收件人”地址的电子邮件?
【发布时间】:2009-01-16 23:26:09
【问题描述】:

是否可以使用 Mail::Sender 发送只有 ccbcc 收件人的电子邮件?当我尝试发送没有“收件人”地址的电子邮件时,我得到了预期的返回码:

-8 = 参数 $ 为空

【问题讨论】:

  • 当心:丢失的 To-header 不是垃圾邮件过滤器轻而易举的事情。例如,SpamAssassin 会将此类电子邮件的垃圾邮件评分至少增加 1.5。

标签: perl email


【解决方案1】:

在“to”字段中使用空字符串'' 不起作用。使用空间就像一种魅力。

use Mail::Sender;

my $sender = Mail::Sender->new();
my $mail   = {
    smtp                 => 'mailserver',
    from                 => 'example@example.com',
    to                   => ' ',
    bcc                  => 'example@example.com',
    subject              => 'test',
    ctype                => 'text/plain; charset=utf-8',
    skip_bad_recipients  => 1,
    msg                  => 'test'
};

my $ret =  $sender->MailMsg($mail);

print $ret;

【讨论】:

    【解决方案2】:

    fake_to 参数是否起作用:

    fake_to

    => 将在标题中显示的收件人地址。如果未指定,我们使用“to”的值。

    如果您要将邮件发送到的地址列表很长,或者您不希望收件人看到彼此的地址,请将 fake_to 参数设置为一些信息丰富但虚假的地址或您的邮寄地址/分发列表。

    http://metacpan.org/pod/Mail::Sender

    查看源代码,您似乎仍然需要将to 参数设置为某些东西。也许" " 可以解决问题?

    【讨论】:

      【解决方案3】:

      你试过用 '' 吗?

      【讨论】:

        猜你喜欢
        • 2014-09-22
        • 1970-01-01
        • 2017-11-05
        • 2014-12-15
        • 2012-09-11
        • 1970-01-01
        • 2019-07-23
        • 1970-01-01
        • 2016-01-21
        相关资源
        最近更新 更多