【发布时间】:2017-07-21 23:13:26
【问题描述】:
我正在尝试使用 Amazon SES 通过 AWS-SDK 和 sendRawEmail() 发送邮件(带或不带附件)。
但它总是会因为标题中缺少“From”错误而反弹。
代码如下:
$header .= "From: abc@abc.com \r\n ";
$header .= "To: def@def.com \r\n ";
$header .= "Reply-To: abc@abc.com \r\n ";
$header .= "Subject: Testing Attachments \r\n ";
$header .= "MIME-Version: 1.0 \r\n ";
$header .= "Content-Type: text/plain; charset=utf-8 \r\n ";
$header .= "Content-Transfer-Encoding: 7bit \r\n \r\n ";
$header .= "This is normal content \r\n ";
$result = $client->sendRawEmail(
array('RawMessage' => array('Data' => base64_encode($header)), 'Source' => 'abc@abc.com', 'Destinations' => array('def@def.com'), 'SourceArn' => 'arn:aws:ses:eu-west-1:1234:identity/abc@abc.com', 'FromArn' => 'arn:aws:ses:eu-west-1:1234:identity/abc@abc.com')
);
如果我在sendRawEmail() 中没有给出“来源”、“目的地”,那么它会给出错误“发件人”标头缺失,并且如果给出这些参数,邮件会以相同的错误退回。
提前感谢您帮助我找到相同的解决方案。
【问题讨论】:
-
可能不相关,但每个
\r\n之前应该有 no 空格字符。消息末尾肯定应该没有。
标签: php amazon-web-services aws-sdk amazon-ses