当前位置:   article > 正文

php ses 发送邮件,使用 Amazon SES API 和 AWS SDK for PHP 版本 3 验证电子邮件身份 - 适用于 PHP 的 AWS 开发工具包...

aws邮件验证登录sdk

AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门。

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用 Amazon SES API 和 AWS SDK for PHP 版本 3 验证电子邮件身份

当您首次开始使用 Amazon Simple Email Service (Amazon SES) 账户时,您将发送电子邮件到的同一个区域中的所有发件人和收件人均必须经过验证。有关发送电子邮件的更多信息,请参阅使用 Amazon SES 发送电子邮件。

以下示例演示如何:

版本 3 的所有示例代码在 AWS SDK for PHP 上的此处提供。GitHub

Credentials

有关使用 Amazon SES 的更多信息,请参阅 Amazon SES 开发人员指南。

验证电子邮件地址

Amazon SES 只能从已验证的电子邮件地址或域发送电子邮件。通过验证电子邮件地址,您可证明您是该地址的所有者,并希望允许 Amazon SES 从该地址发送电子邮件。

运行以下代码示例时,Amazon SES 将向您指定的地址发送一封电子邮件。当您(或电子邮件的收件人)单击电子邮件中的链接时,该地址将得到验证。

要将电子邮件地址添加到您的 Amazon SES 账户,请使用 VerifyEmailIdentity 操作。

导入

require 'vendor/autoload.php';

use Aws\Ses\SesClient;

use Aws\Exception\AwsException;

示例代码

$SesClient = new Aws\Ses\SesClient([

'profile' => 'default',

'version' => '2010-12-01',

'region' => 'us-east-2'

]);

$email = 'email_address';

try {

$result = $SesClient->verifyEmailIdentity([

'EmailAddress' => $email,

]);

var_dump($result);

} catch (AwsException $e) {

// output error message if fails

echo $e->getMessage();

echo "\n";

}

验证电子邮件域

Amazon SES 只能从已验证的电子邮件地址或域发送电子邮件。通过验证域,您可证明自己是该域的所有者。通过验证域,您将允许 Amazon SES 从该域上的任何地址发送电子邮件。

当您运行以下代码示例时,Amazon SES 向您提供验证令牌。您必须将令牌添加到域的 DNS 配置。有关更多信息,请参阅 Amazon SES Developer

Guide中的使用 Amazon SES 验证域。

要将发送域添加到您的 Amazon SES 账户,请使用 VerifyDomainIdentity 操作。

导入

require 'vendor/autoload.php';

use Aws\Ses\SesClient;

use Aws\Exception\AwsException;

示例代码

$SesClient = new Aws\Ses\SesClient([

'profile' => 'default',

'version' => '2010-12-01',

'region' => 'us-east-2'

]);

$domain = 'domain.name';

try {

$result = $SesClient->verifyDomainIdentity([

'Domain' => $domain,

]);

var_dump($result);

} catch (AwsException $e) {

// output error message if fails

echo $e->getMessage();

echo "\n";

}

列出电子邮件地址

要检索在当前 AWS 区域中提交的电子邮件地址的列表,不论验证状态如何,请使用 ListIdentities 操作。

导入

require 'vendor/autoload.php';

use Aws\Ses\SesClient;

use Aws\Exception\AwsException;

示例代码

$SesClient = new Aws\Ses\SesClient([

'profile' => 'default',

'version' => '2010-12-01',

'region' => 'us-east-2'

]);

try {

$result = $SesClient->listIdentities([

'IdentityType' => 'EmailAddress',

]);

var_dump($result);

} catch (AwsException $e) {

// output error message if fails

echo $e->getMessage();

echo "\n";

}

列出电子邮件域

要检索在当前 AWS 区域中提交的电子邮件域的列表,不论验证状态如何,请使用 ListIdentities 操作。

导入

require 'vendor/autoload.php';

use Aws\Ses\SesClient;

use Aws\Exception\AwsException;

示例代码

$SesClient = new Aws\Ses\SesClient([

'profile' => 'default',

'version' => '2010-12-01',

'region' => 'us-east-2'

]);

try {

$result = $SesClient->listIdentities([

'IdentityType' => 'Domain',

]);

var_dump($result);

} catch (AwsException $e) {

// output error message if fails

echo $e->getMessage();

echo "\n";

}

删除电子邮件地址

要从身份列表中删除已验证的电子邮件地址,请使用 DeleteIdentity 操作。

导入

require 'vendor/autoload.php';

use Aws\Ses\SesClient;

use Aws\Exception\AwsException;

示例代码

$SesClient = new Aws\Ses\SesClient([

'profile' => 'default',

'version' => '2010-12-01',

'region' => 'us-east-2'

]);

$email = 'email_address';

try {

$result = $SesClient->deleteIdentity([

'Identity' => $email,

]);

var_dump($result);

} catch (AwsException $e) {

// output error message if fails

echo $e->getMessage();

echo "\n";

}

删除电子邮件域

要从已验证身份列表中删除已验证的电子邮件域,请使用 DeleteIdentity 操作。

导入

require 'vendor/autoload.php';

use Aws\Ses\SesClient;

use Aws\Exception\AwsException;

示例代码

$SesClient = new Aws\Ses\SesClient([

'profile' => 'default',

'version' => '2010-12-01',

'region' => 'us-east-2'

]);

$domain = 'domain.name';

try {

$result = $SesClient->deleteIdentity([

'Identity' => $domain,

]);

var_dump($result);

} catch (AwsException $e) {

// output error message if fails

echo $e->getMessage();

echo "\n";

}

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/196194
推荐阅读
相关标签
  

闽ICP备14008679号