Как получить ответ от Amazon SES?
У меня есть код для проверки адреса электронной почты в Amazon ses
<?php
$sesClient = SesClient::factory(array(
'key' => 'secret key',
'secret' => 'secret',
'profile' => 'user_name',
'region' => 'us-east-1'
));
$result = $sesClient->verifyEmailAddress(array('EmailAddress'=> $email));
?>
Мой вывод для $result выглядит следующим образом:
object(Guzzle\Service\Resource\Model) {
[protected] structure => null
[protected] data => array()
}
На самом деле я получил подтвержденное электронное письмо с указанным идентификатором электронной почты. Мой вопрос в том, как проверить, правильно ли работала функция, используя полученный мной ответ? В более ранних веб-сервисах Amazon они использовали $result->is('Ok')
для проверки результата. какую функцию я должен использовать сейчас, чтобы проверить результат на предмет успеха или неудачи этой функции?
Я проверил с ссылка на Amazon и все еще не может найти функцию для успешного ответа
2 answers
Просматривая тесты aws-sdk-php, я обнаружил следующее:
Может быть, вы можете попробовать:
$sesClient->verifyEmailAddress(array('EmailAddress'=> $email));
$sesClient->waitUntilIdentityExists(array('Identities' => array($email)));
$result = $sesClient->getIdentityVerificationAttributes(array('Identities' => array($email)));
if ('Success' === $result->getPath("VerificationAttributes/{$email}/VerificationStatus"))
Я считаю, что вам нужно использовать verifyEmailIdentity
нет verifyEmailAddress
:
$result = $sesClient->verifyEmailIdentity(array('EmailAddress'=> $email));
Как указано в документации AWS:
Действие VerifyEmailAddress устарело с 15 мая 2012 года, когда была выпущена версия проверки домена. Действие VerifyEmailIdentity теперь предпочтительнее.