我正在使用perl从服务器为任何网络事件生成邮件。
该代码的一部分是:
use Mail::Send;
$email->set('From', 'Mahesh Gohil');
并根据此代码生成如下电子邮件:
Mahesh.Gohil@nsetools.controlnet.equant.net
这里添加'。'我的名字和姓氏之间的点。
我希望来自地址
Mahesh Gohil@nsetools.controlnet.equant.net
^- There is space between first and last name.
答案 0 :(得分:3)
您不能拥有包含空格字符(RFC2821 and RFC2822)的邮件地址。
我认为您看到的起始地址是发件人的地址,与您设置的属性无关...
答案 1 :(得分:0)
电子邮件地址本身不能包含空格。
但是,电子邮件地址的解释取决于您使用的SMTP服务器,并且可能因系统而异。根据{{3}}第3.4节,您可以尝试这样的事情:
First Last <email@address.com>
作为电子邮件地址。而且,您的SMTP应该理解这一点。但是,您可能无法使用Mail::Send
执行此操作。试试RCF2822。该模块附带标准的Perl发行版,可直接与SMTP服务器通信。您必须使用Net::SMTP
比使用Mail::Send
更好地理解邮件标题,但如果Mail::Send
没有,则它应该有效。