📝Docs: Final
This commit is contained in:
@@ -1,18 +1,140 @@
|
||||
# send-mail
|
||||
# Mini Email Sender
|
||||
|
||||
一个简易的邮件发送应用,用户可以通过前端界面填写邮件信息并发送邮件。
|
||||
|
||||
## 项目介绍
|
||||
|
||||
Mini Email Sender 是一个前后端分离的邮件发送应用,采用现代化的技术栈构建。用户可以通过直观的前端界面快速发送邮件,后端负责处理邮件发送逻辑。
|
||||
|
||||
## 技术栈
|
||||
|
||||
### 后端 (Spring Boot)
|
||||
- **框架**: Spring Boot 3.x
|
||||
- **语言**: Java 21
|
||||
- **邮件发送**: Spring Mail + JavaMail
|
||||
- **构建工具**: Maven
|
||||
|
||||
### 前端 (Vue.js)
|
||||
- **框架**: Vue 3 + Vite
|
||||
- **UI组件库**: Element Plus
|
||||
- **HTTP客户端**: Axios
|
||||
- **样式**: Scss + Custom CSS
|
||||
|
||||
## 项目结构
|
||||
|
||||
```
|
||||
.
|
||||
├── backend/ # 后端代码
|
||||
│ ├── src/main/java/cn/hezhaohui/mail/
|
||||
│ │ ├── controller/ # 控制器层
|
||||
│ │ ├── service/ # 服务层
|
||||
│ │ ├── config/ # 配置类
|
||||
│ │ └── entity/ # 实体类
|
||||
│ └── pom.xml # Maven配置文件
|
||||
├── frontend/ # 前端代码
|
||||
│ ├── src/
|
||||
│ │ ├── components/ # 组件目录
|
||||
│ │ │ └── EmailSender.vue # 邮件发送组件
|
||||
│ │ ├── App.vue # 根组件
|
||||
│ │ └── main.js # 应用入口
|
||||
│ └── package.json # 前端依赖配置
|
||||
└── README.md # 项目说明文档
|
||||
```
|
||||
|
||||
## 功能特性
|
||||
|
||||
### 前端功能
|
||||
- 邮件发送表单(收件人、标题、内容)
|
||||
- 表单验证(邮箱格式、必填项)
|
||||
- 响应式UI界面
|
||||
- 发送状态提示
|
||||
- 重置表单功能
|
||||
|
||||
### 后端功能
|
||||
- RESTful API接口
|
||||
- 邮件发送服务
|
||||
- 基本的错误处理
|
||||
- 日志记录
|
||||
|
||||
## 快速开始
|
||||
|
||||
### 环境要求
|
||||
- Java 21
|
||||
- Node.js 16+
|
||||
- Maven 3.6+
|
||||
|
||||
### 后端启动
|
||||
|
||||
1. 进入后端目录:
|
||||
```bash
|
||||
cd backend
|
||||
```
|
||||
|
||||
2. 编译项目:
|
||||
```bash
|
||||
mvn clean compile
|
||||
```
|
||||
|
||||
3. 运行应用:
|
||||
```bash
|
||||
mvn spring-boot:run
|
||||
```
|
||||
|
||||
默认端口:`8080`
|
||||
|
||||
### 前端启动
|
||||
|
||||
1. 进入前端目录:
|
||||
```bash
|
||||
cd frontend
|
||||
```
|
||||
|
||||
2. 安装依赖:
|
||||
```bash
|
||||
npm install
|
||||
```
|
||||
|
||||
3. 启动开发服务器:
|
||||
```bash
|
||||
npm run dev
|
||||
```
|
||||
|
||||
默认端口:`3000`
|
||||
|
||||
## API接口
|
||||
|
||||
### 发送邮件
|
||||
- **URL**: `/api/email/send`
|
||||
- **方法**: `POST`
|
||||
- **参数**:
|
||||
- `to` (string, 必填): 收件人邮箱地址
|
||||
- `subject` (string, 必填): 邮件标题
|
||||
- `content` (string, 必填): 邮件内容
|
||||
- **响应**:
|
||||
```json
|
||||
{
|
||||
"status": 200,
|
||||
"message": "success"
|
||||
}
|
||||
```
|
||||
|
||||
## 配置说明
|
||||
|
||||
### 后端邮件配置
|
||||
需要在 `application.properties` 或 `application.yml` 中配置SMTP服务器信息:
|
||||
```yaml
|
||||
spring:
|
||||
mail:
|
||||
host: smtp.example.com
|
||||
port: 587
|
||||
username: your-email@example.com
|
||||
password: your-password
|
||||
properties:
|
||||
mail:
|
||||
smtp:
|
||||
auth: true
|
||||
starttls:
|
||||
enable: true
|
||||
```
|
||||
|
||||
## 任务清单
|
||||
|
||||
| **任务编号** | **任务内容** |
|
||||
|--------------|------------------------------------------------------------------------------|
|
||||
| ✅T01 | 搭建 Vue 3 前端项目(使用 Vite) |
|
||||
| ✅T02 | 开发邮件发送页面(含表单和附件上传功能) |
|
||||
| ✅T03 | 集成 Axios 实现 AJAX 提交邮件数据 |
|
||||
| T04 | 创建 Spring Boot 后端项目,集成 Spring Mail 发送邮件功能 |
|
||||
| T05 | 开发 `/api/email/send` 接口,支持附件上传 |
|
||||
| T06 | 配置 SMTP 参数(YAML/Properties) |
|
||||
| T07 | 实现接口安全控制(API Key 或 JWT) |
|
||||
| T08 | 处理附件上传逻辑(格式校验、大小限制、命名规则) |
|
||||
| T09 | 邮件发送错误处理与格式验证(邮箱、SMTP 配置等) |
|
||||
| T10 | 配置部署前端(Nginx / Vercel) |
|
||||
| T11 | 部署后端服务(JAR/WAR 或 Docker) |
|
||||
| T12 | 进行性能测试 |
|
||||
Reference in New Issue
Block a user