我正在尝试使用MIME:Lite
发送HTML电子邮件,我想通过它发送超链接。当我发送它没有超链接时,它转到Inbox
但是通过超链接进入Junk
。这是我的代码。
#!/grid/common/pkgs/perl/latest/bin/perl
use MIME::Lite;
$to = 'gpreeti@xyz.com';
$cc = 'mohitsha@xyz.com';
$from = 'gpreeti@xyz.com';
$subject = 'Test Email';
my $message = <<END ;
<p> Hi, can you this Link in your inbox</p>
<a href='http://etpv/cgi-bin/status_tracker/tracksql.cgi?curr_tab=inbox'>Click here to view it</a>
<br ><br >
<p>Thanks,<br >Preeti</p>
END
$msg = MIME::Lite->new(
From => $from,
To => $to,
Cc => $cc,
Subject => $subject,
Data => $message
);
$msg->attr("content-type" => "text/html");
$msg->send;
print "Email Sent Successfully\n";
任何人都可以建议如何做到这一点?
答案 0 :(得分:0)
I have referred from this site:
你可以选择。首先,您可以发送包含URL的纯文本附件。正如doward所解释的那样,大多数现代邮件程序都会识别URL并在显示邮件时将其转换为可点击的链接。在这种情况下,您的邮件如下所示:
String input = "{\"name\":\"tom\",\"email\":\"tom@email.com\"}";
ClientResponse response = webResource.type("application/json")
.post(ClientResponse.class, input);
这是它在纯文本中工作的唯一方式。您可以只包含URL并依赖邮件程序使其可以点击。
或者,您可以创建包含真实标记的邮件的HTML版本。在这种情况下,您的邮件看起来像这样:
my $message_body = <<END_OF_BODY;
This is a list of things to bring
* Fresh flowers from Flowershop X
http://www.example.com/flowers
* Today's Arrangement instructions from instruction home page
http://www.example.com/arrangement/
END_OF_BODY
在第二个示例中,您需要将附件的内容类型设置为&#39; text / html&#39;以便显示它的邮件程序知道如何对待它。
正如有几个人在这个帖子中提到的,如果你想要HTML邮件,那么最好的方法是有两个附件,其中一个是HTML版本,另一个是纯文本版本。在这种情况下,您需要了解您的邮件构建模块(我只能再次重复我对Perl电子邮件项目的建议)如何构建具有多个附件的MIME邮件。