【发布时间】:2020-04-26 16:25:47
【问题描述】:
我改编了 Perl Cookbook 中的脚本。我正在测试它以在 gmail 中向自己发送邮件。
#!/usr/bin/perl
use strict;
use warnings;
use MIME::Lite;
my $msg;
$msg = MIME::Lite->new(From => 'zmumba@gmail.com',
To => 'zmumba@gmail.com',
Subject => 'My office photo',
Type => 'multipart/mixed');
$msg->attach(Type => 'image/png',
Path => '/home/zmumba/ZMD_Proj/Docs/Reporting',
Filename => 'office_lyout.png');
$msg->attach(Type => 'TEXT',
Data => 'I hope you can use this!');
$msg->send( );
当我运行此脚本时,我收到消息“/home/zmumba/ZMD_Proj/Docs/Reporting”不可读。 从这里How can I send mail through Gmail with Perl?,我现在明白我必须通过邮件服务器发送邮件才能使用 MIME::Lite。所以我换了
$msg = MIME::Lite->new(From => 'zmumba@gmail.com
与
$msg = Email::Send::Gmail->new(From => 'zmumba@gmail.com
我收到错误“无法通过包 Email::Send::Gmail 找到对象方法“新””。
然后我尝试了
$msg = Net::IMAP::Simple::SSL->new(From => 'zmumba@gmail.com',
我在 /home/zmumba/perl5/lib/perl5/Net/IMAP/Simple.pm 第 25 行得到“散列分配中的奇数个元素”。 无法在...处的未定义值上调用方法“附加”。 关于如何去做的任何帮助? 感谢期待。
【问题讨论】:
-
我删除了链接。请勿链接盗版书籍! (我注意到它也是 Perl 4 的一本书。它可怕地过时了,与最佳实践相去甚远)
-
@Quentin 尽管有那个 URL,Perl Cookbook 还是 perl5。自 2003 年以来,它仍然非常过时。
-
看看这个话题的recently updated perlfaq entry。
-
对不起,但这看起来像是在摆弄,没有任何理解你在做什么,尤其是没有阅读文档 - 因此被否决。由于 IMAP 协议仅用于阅读邮件,因此甚至不可能使用 IMAP 发送电子邮件。
标签: perl