0
我一直在試圖通過電子郵件發送多部分HTML消息,但得到了太多的錯誤和警告。我使用Email::Sender
模塊爲sendmail()
和Email::MIME
創建消息。爲什麼在嘗試使用電子郵件::發送模塊通過電子郵件發送多部分HTML郵件時拋出錯誤?
以下是供參考的相關部分代碼。真的很感謝,如果有人能指出我所犯的錯誤和任何消除它的指針。
注意:所有RHS變量都是從屬性文件正確分配的。我還打印了它們以檢查它們是否被分配了正確的值。
use Email::MIME;
use Email::MIME::CreateHTML;
use Email::Sender::Simple qw(sendmail);
use Email::Sender::Transport::SMTP qw();
my $smtpServer = $mailSMTPHost;
my $smtpPort = $mailSMTPPort;
my $smtpUser = $mailLogin;
my $smtpPassword = $mailPwd;
my $transport = Email::Sender::Transport::SMTP->new({
host => $smtpServer,
port => $smtpPort,
sasl_username => $smtpUser,
sasl_password => $smtpPassword,
});
# for Email with HTML content
my $mailBody = $mailGreeting . $mailMsg . $mailSignature;
my $email = Email::MIME->create_html(
header => [
From => $mailFrom,
To => $mailTo,
Cc => $mailCC,
Bcc => $mailBCC,
Reply => $mailReplyTo,
Subject => $mailSubject
],
body => $mailBody
);
eval { sendmail($email, { transport => $transport }); };
if ([email protected]) {
# [email protected] is an object of Email::Sender::Failure
print [email protected]>message;
print"\n"[email protected]>code;
# print "Oh no!". [email protected]>what;
} else{ print "sendmail success"; };
運行時我收到以下錯誤代碼:
Parsing of undecoded UTF-8 will give garbage when decoding entities at /System/Library/Perl/Extras/5.16/darwin-thread-multi-2level/HTML/PullParser.pm line 81.
failed AUTH: Command unknown: 'AUTH'
500
您是否安裝了MIME :: Base64和Authen :: SASL?看起來像電子郵件::發件人::運輸:: SMTP需要他們進行身份驗證。將它們添加到您的模塊列表中以「使用」。 – 2014-09-23 20:42:01
@allen是的我根據您的建議安裝了這兩個模塊並添加到了使用中。但不幸的是結果仍然相同 – user1931485 2014-09-24 01:07:50