我正在尝试将 AWS PHP SDK 与我的应用程序集成,以便它可以使用 AWS 简单电子邮件服务发送电子邮件。我有以下 PHP 代码:
require_once 'Aws/aws-autoloader.php';
$client = Aws\Ses\SesClient::factory(array(
'version'=> '2010-12-01',
'region' => 'us-west-2',
'credentials' => [
'key' => $access_key_id,
'secret' => $access_key_secret,
],
));
try {
$result = $client->sendRawEmail([
'Source' => $from_email,
'Destination' => [
'ToAddresses' => [
$to_email,
],
],
'RawMessage' => [
'Data' => $raw_message
],
]);
$messageId = $result->get('MessageId');
} catch (Aws\Ses\Exception\SesException $error) {
echo("The email was not sent. Error message: ".$error->getAwsErrorMessage()."\n");
}
上面的代码返回一个空的错误消息,但是电子邮件没有送达。
The email was not sent. Error message:
我已在 AWS 中完成验证步骤以验证电子邮件所有权,并且我的账户已退出沙盒模式。当我使用 AWS 控制台上的“发送测试邮件”功能发送测试邮件时,邮件发送成功。