Perl虽然有Net::SMTP模块可以发送邮件,但是似乎只能发送纯文本的邮件,这次的需求是将一个HTML网页直接显示在邮件正文中,因此搜索到了MIME::Lite模块来实现这个功能。
use strict; use MIME::Lite; my $mailhost="smtp.163.com"; my $username="test\@163.com"; my $password="test"; my $data=' <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> title </title> </head> <body> <p>hello world</p> </body> </html> '; my $msg=MIME::Lite->new( From=>"$username", To=>"$username", Subject=>"title", Type=>"text/html", Data=>"$data" ); $msg->send('smtp',$mailhost,AuthUser=>$username,AuthPass=>$password);