Oct 22, 2008

用perl发送邮件

 
1 在不需要认证的smtp服务器上发送邮件
use Net::SMTP;

$smtp = Net::SMTP->new($mail_server);#邮件服务器地址
$smtp->mail($send_user);#发件人
$smtp->to($recv_user);#收件人

$smtp->data();
$smtp->datasend("Subject: 测试主题\n");#主题
$smtp->datasend("\n");
$smtp->datasend("A simple test message 测试中英文混合\n"); #消息内容
$smtp->dataend();

$smtp->quit;


2 在需要认证的smtp服务器上发送邮件
#!/usr/bin/perl -w

#我用的是网易的126邮箱,参数请自己再设定一下,请自行安装Net::SMTP_auth
use Net::SMTP_auth;

$smtp = Net::SMTP_auth->new('smtp.126.com', Debug => 1);
$smtp->auth('LOGIN', 'aa', 'password');#本行验证

$smtp->mail('aa@126.com');
$smtp->to('aa@126.com');
$smtp->data();
$smtp->datasend("Subject: 你好吗\n");
$smtp->datasend("\n");
$smtp->datasend("A simple test message 终于成功了");
$smtp->dataend();

$smtp->quit;

--
Thanks
Xiangzhen

No comments:

Post a Comment