如何使用 Mail::Sender 发送没有“收件人”地址的电子邮件?
Posted
技术标签:
【中文标题】如何使用 Mail::Sender 发送没有“收件人”地址的电子邮件?【英文标题】:How do I send an Email with no "to" address using Mail::Sender? 【发布时间】:2009-01-16 23:26:09 【问题描述】:是否可以使用 Mail::Sender 发送只有 cc 或 bcc 收件人的电子邮件?当我尝试发送没有“收件人”地址的电子邮件时,我得到了预期的返回码:
-8 = 参数 $ 为空
【问题讨论】:
当心:丢失的 To-header 不是垃圾邮件过滤器轻而易举的事情。例如,SpamAssassin 会将此类电子邮件的垃圾邮件评分至少增加 1.5。 【参考方案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】:你试过用 '' 吗?
【讨论】:
以上是关于如何使用 Mail::Sender 发送没有“收件人”地址的电子邮件?的主要内容,如果未能解决你的问题,请参考以下文章