如何使用perl Net :: SMTP发送html正文和普通附件

时间:2013-12-02 13:41:02

标签: perl smtp

除了有Mime:Lite等我没有其他可能使用Net :: SMTP。

我正在尝试发送包含html消息部分的电子邮件以及包含文本的附件。我想某些内容不正确或mime格式可能不正确?

我可以获得内容附件,但不会显示电子邮件正文中的消息:

 $smtp->data();
 $smtp->datasend("Subject: ".$self->{SUBJECT}."\n");
 $smtp->datasend("To: ".@{$self->{TO}}[0]."\n");
 $smtp->datasend("From: ".$self->{FROM}."\n");
 $smtp->datasend("MIME-Version: 1.0\n");
 $smtp->datasend("Content-Type: multipart/mixed; boundary=\"frontier\"\n");
 $smtp->datasend("\n--frontier\n");
 $smtp->datasend("Content-Type: text/html; charset=\"UTF-8\" \n");
 $smtp->datasend("<h3>".$self->{BODY}."<\/h3>");
 $smtp->datasend("\n");
 $smtp->datasend("--frontier\n");
 $smtp->datasend("Content-Type: application/text; name= traps.txt \n");
 $smtp->datasend("Content-Disposition: attachment; filename=\"traps.txt\"\n");
 $smtp->datasend("\n");
 $smtp->datasend($self->{BODY});
 $smtp->datasend("\n");
 $smtp->datasend("--frontier\n");
 $smtp->dataend();
 $smtp->quit;

0 个答案:

没有答案