AWS SES服务 Golang接入教程(排坑版)

2024-09-03 22:04

本文主要是介绍AWS SES服务 Golang接入教程(排坑版),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

因为刚来看的时候 也迷迷糊糊的 所以 先讲概念 再上代码

一 基础设置

在这里插入图片描述
这里需要完成两个最基础的设置任务
1 是验证至少一个收件电子邮箱
2 【很关键】是验证发送域。即身份里的域类型的身份。(可以理解为配置你的域名邮箱服务器(SMPT)为亚马逊提供的服务器)。点击“待验证”可以看到 一份 DNS 解析记录,将此份记录逐个添加到你域名的DNS服务器。
如下图(我用的是Cloudflare)
在这里插入图片描述
除了我打码的部分 其余都是按着AWS SES要求 新增加的。可以一个一个添加,也可以下载.isv文件上传。我这里上传失败,手动添加的。

在此过程中,有一个MX类型的记录要特别注意,有坑。
SES给的配置值如下:

name:noreply
value:10 feedback-smtp.ap-southeast-1.amazonses.com

如果你把这个值整个复制进去 是不行的。
10应该理解为优先级 单独设置。这样就OK了。
在这里插入图片描述
配置好后 等一会就可以看到任务二也被验证完成了。
验证完成后,你注册AWS的邮箱会收到通知短信
在这里插入图片描述
意味着你可以使用任何以@yourdomain.com结尾的邮箱地址发送邮件。

二 身份

在这里插入图片描述
因为是沙箱环境 所以 身份里是你要发邮件测试的 收件邮箱。创建身份后 会收到邮件,在邮箱里确认后,就可以看到此身份为已验证的。
测试环境你只能给认证过的邮箱发信。

三访问

在这里插入图片描述

SMTP凭证–操控API

在SMTP设置那里 可以创建新的SMTP凭证,
在这里插入图片描述
这里只需要密钥的key value和正确的region就可以建立可用的session链接。

var(accessKey = "AKIXXXXU2BBBBBX2TET"                     //""secretKey = "IXXXXXWRwD9q1cgyQQEccXXXXXXXXmAN9g" //""region    = "ap-southeast-1")
func AWSInit() (*session.Session, error) {//只要不修改session,session就可以安全的并发使用。return session.NewSession(&aws.Config{Credentials: credentials.NewStaticCredentials(accessKey, secretKey, ""),//Endpoint:         aws.String(endpoint),Region: aws.String(region),//S3ForcePathStyle: aws.Bool(false),//SDK 支持使用客户端 TLS 证书配置的环境和会话选项,这些证书作为客户端 TLS 握手的一部分发送以进行客户端身份验证。//如果使用,则需要 Cert 和 Key 值。如果缺少一个,或者无法加载文件的内容,则会返回一个错误。//ClientTLSCert:              nil,//ClientTLSKey:               nil,})
}

四 测试

sender 是 任何@yourdomain.com 例如:contact@yourdomain.con
因为是沙箱环境 所以 recipients 是 你在【身份】里认证过的
注意 recipients收件人 必须是合规的邮箱格式,否则会报错

测试结果 :很丝滑,不愧是AWS SES

在这里插入图片描述

ps

刚刚又收到了一个邮件 说是探测到了MX配置的那个noreply 具体还没明白 后边再研究下
在这里插入图片描述

这篇关于AWS SES服务 Golang接入教程(排坑版)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1134168

相关文章

Linux创建服务使用systemctl管理详解

《Linux创建服务使用systemctl管理详解》文章指导在Linux中创建systemd服务,设置文件权限为所有者读写、其他只读,重新加载配置,启动服务并检查状态,确保服务正常运行,关键步骤包括权... 目录创建服务 /usr/lib/systemd/system/设置服务文件权限:所有者读写js,其他

全网最全Tomcat完全卸载重装教程小结

《全网最全Tomcat完全卸载重装教程小结》windows系统卸载Tomcat重新通过ZIP方式安装Tomcat,优点是灵活可控,适合开发者自定义配置,手动配置环境变量后,可通过命令行快速启动和管理... 目录一、完全卸载Tomcat1. 停止Tomcat服务2. 通过控制面板卸载3. 手动删除残留文件4.

Java服务实现开启Debug远程调试

《Java服务实现开启Debug远程调试》文章介绍如何通过JVM参数开启Java服务远程调试,便于在线上排查问题,在IDEA中配置客户端连接,实现无需频繁部署的调试,提升效率... 目录一、背景二、相关图示说明三、具体操作步骤1、服务端配置2、客户端配置总结一、背景日常项目中,通常我们的代码都是部署到远程

Python的pandas库基础知识超详细教程

《Python的pandas库基础知识超详细教程》Pandas是Python数据处理核心库,提供Series和DataFrame结构,支持CSV/Excel/SQL等数据源导入及清洗、合并、统计等功能... 目录一、配置环境二、序列和数据表2.1 初始化2.2  获取数值2.3 获取索引2.4 索引取内容2

python依赖管理工具UV的安装和使用教程

《python依赖管理工具UV的安装和使用教程》UV是一个用Rust编写的Python包安装和依赖管理工具,比传统工具(如pip)有着更快、更高效的体验,:本文主要介绍python依赖管理工具UV... 目录前言一、命令安装uv二、手动编译安装2.1在archlinux安装uv的依赖工具2.2从github

C#实现SHP文件读取与地图显示的完整教程

《C#实现SHP文件读取与地图显示的完整教程》在地理信息系统(GIS)开发中,SHP文件是一种常见的矢量数据格式,本文将详细介绍如何使用C#读取SHP文件并实现地图显示功能,包括坐标转换、图形渲染、平... 目录概述功能特点核心代码解析1. 文件读取与初始化2. 坐标转换3. 图形绘制4. 地图交互功能缩放

SpringBoot集成redisson实现延时队列教程

《SpringBoot集成redisson实现延时队列教程》文章介绍了使用Redisson实现延迟队列的完整步骤,包括依赖导入、Redis配置、工具类封装、业务枚举定义、执行器实现、Bean创建、消费... 目录1、先给项目导入Redisson依赖2、配置redis3、创建 RedissonConfig 配

sysmain服务可以禁用吗? 电脑sysmain服务关闭后的影响与操作指南

《sysmain服务可以禁用吗?电脑sysmain服务关闭后的影响与操作指南》在Windows系统中,SysMain服务(原名Superfetch)作为一个旨在提升系统性能的关键组件,一直备受用户关... 在使用 Windows 系统时,有时候真有点像在「开盲盒」。全新安装系统后的「默认设置」,往往并不尽编

基于C#实现PDF转图片的详细教程

《基于C#实现PDF转图片的详细教程》在数字化办公场景中,PDF文件的可视化处理需求日益增长,本文将围绕Spire.PDFfor.NET这一工具,详解如何通过C#将PDF转换为JPG、PNG等主流图片... 目录引言一、组件部署二、快速入门:PDF 转图片的核心 C# 代码三、分辨率设置 - 清晰度的决定因

Python 基于http.server模块实现简单http服务的代码举例

《Python基于http.server模块实现简单http服务的代码举例》Pythonhttp.server模块通过继承BaseHTTPRequestHandler处理HTTP请求,使用Threa... 目录测试环境代码实现相关介绍模块简介类及相关函数简介参考链接测试环境win11专业版python