Ошибка AWS SES в PHP: невозможно определить имя службы / операции для авторизации

Я пытаюсь отправить электронное письмо, используя AWS SES, используя следующий скрипт PHP:

<?php

require_once("phar://aws.phar");
use Aws\Ses\SesClient;

//Open client
$client = SesClient::factory(array(
"key" => "key",
"secret" => "secret",
"region" => "region"));

$subject = "subject";
$messageText = "text message";
$messageHtml = "<h1>formatted message</h1>";

//Send email
try{

$response = $client->sendEmail(
array(
'Source' => 'verified_email@domain.com',
'Destination' => array(
'ToAddresses' => array('an_address@domain.com')
),
'Message' => array(
'Subject' => array('Data' => $subject),
'Body' => array('Text' => array('Data' => $messageText)),
'Html' => array('Data' => $messageHtml)
)
)
);

}catch(Exception $e){
//An error happened and the email did not get sent
echo($e->getMessage());
}
?>

Всякий раз, когда я запускаю это, он переходит к предложению catch и выводит на экран сообщение:

Unable to determine service/operation name to be authorized

Это не дает мне никакой информации о том, что не так, и на странице API нет документации по этому поводу. Есть идеи?

3

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …