littlebot
Published on 2025-04-09 / 3 Visits
0

【源码】基于Go语言的邮件推送服务系统

项目简介

本项目是基于Go语言开发的邮件推送服务系统,提供简单、高效的邮件发送服务。借助Go语言的并发特性和gomail库,可并发处理多个邮件发送任务,同时具备灵活的邮件发送配置与简单的API接口,方便集成到其他系统。

项目的主要特性和功能

  1. 并发处理:支持并发处理多个邮件发送任务,提升邮件发送效率。
  2. 灵活配置:可配置多个邮件发送账号,每个账号能设置不同的邮件服务器地址、端口、用户名和密码。
  3. 简单API:提供简单的HTTP API接口,便于外部系统调用。
  4. 加密安全:运用AES加密技术对应用令牌加密,保障数据安全。
  5. 日志记录:记录邮件发送的日志信息,包含发送状态、错误信息等。

安装使用步骤

假设用户已下载本项目的源码文件,按以下步骤操作:

安装依赖

暂无依赖安装说明。

配置文件

config.example.yaml重命名为config.yaml,并按需求设置系统配置和邮件配置信息,示例如下: ```yaml system: worker_number: 2 #单个账号的并发数 delay: 2s #每个协程队列的延时 max_queue_size: 100 #每个协程队列的最大值 key: 1234567890qwerft #AES秘钥key 长度为16/24/32位

emails: - address: example@example.com #邮箱地址 server: smtp.exmail.example.com #smtp服务器地址 port: 465 #端口号 password: example #密码 - address: example@example.com server: smtp.exmail.example.com port: 465 password: example ```

生成应用秘钥

使用以下命令生成应用秘钥: bash ./email new -name=email -ip=127.0.0.1 -author=mohuishou 参数说明: |参数|说明| |:----:|:----:| |name|应用名| |ip|允许的来源地址| |author|应用作者|

运行程序

使用以下命令启动邮件推送服务系统: bash ./email -c=config.yaml -p=8080 参数说明: |参数|说明| |:----:|:----:| |c|配置文件地址| |p|端口号|

调用API

通过HTTP POST请求调用发送邮件的API: uri: / method: post header: { token: "rdytfugihnljvcdhrjtugkyhk32fdr7tifuyvh" } params: { title: "Hello World!" address: "1@lailin.xyz" content: "<h1>Hello World</h1>" } 参数说明: |参数|说明|备注| |:----:|:----:|:----:| |token|签发的应用token|必须| |title|邮件主题|必须| |address|邮件地址|必须| |content|邮件内容|必须|

返回结果示例: json { "status": 0, "msg": "地址 必须!", "data": "" } 返回参数说明: |参数|说明|备注| |:----:|:----:|:----:| |status|状态|0:失败,1:成功| |msg|提示信息|| |data|数据信息|暂未使用|

注意事项

  • 运行程序前,确保已正确配置config.yaml文件。
  • 使用API接口时,需提供正确的应用令牌(token)。
  • 系统使用AES加密技术,需妥善保管加密密钥。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】