2011-07-22 45 views
2

我有电子邮件发送代码不没有任何错误消息的工作(由“不工作”我的意思是所有接缝OK,但我没有消息我打开邮箱)发送电子邮件:通过Gmail

use strict; 
use warnings; 
use Email::Send; 
use Email::Simple::Creator; 

report_update(); 

sub report_update { 

    my $mailer = Email::Send->new(
     { 
      mailer  => 'SMTP::TLS', 
      mailer_args => [ 
       Host  => 'smtp.gmail.com', 
       Port  => 587, 
       User  => $CONFIG{EMAIL_USER}, 
       Password => $CONFIG{EMAIL_PASS}, 
       Hello => 'localhost', 
      ] 
     } 
    ); 

    my $email = Email::Simple->create(
     header => [ 
      From => $CONFIG{EMAIL_USER}, 
      To  => $CONFIG{TARGET_EMAIL}, 
      Subject => 'Updated info finded!', 
     ], 
     body => 'Updated info finded!', 
    ); 

    eval { $mailer->send($email) }; 
    die "Error sending email: [email protected]" if [email protected]; 

    print "Finished!\n"; 
} 

你能给我一个提示它有什么问题吗?

+0

“find”的无关紧要但过去式是“found”而不是“finded”。 – jira

+0

谢谢。我会学习英语。 – gangabass

回答

10

有一个Email::Send::Gmail这可能会让你的生活更轻松。

+0

谢谢你指点我这个模块!现在我在我的代码中使用它,但问题仍然在我的脑海中:为什么这段代码不起作用? – gangabass