# upfile **Repository Path**: burcewangg/upfile ## Basic Information - **Project Name**: upfile - **Description**: 提供高效、安全的文件管理解决方案,支持多种格式和大文件上传,适用于Web应用开发。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-11-06 - **Last Updated**: 2026-01-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 文件管理系统 一个基于Go语言的文件上传、下载、预览管理系统。 ## 功能特性 - ✅ 文件上传(支持拖拽上传) - ✅ 文件下载 - ✅ 文件预览(支持图片、PDF、文本等) - ✅ 文件列表管理 - ✅ 文件删除 - ✅ 响应式前端界面 - ✅ 实时通知系统 ## 技术栈 ### 后端 - **Go** + **Gin** 框架 - 文件上传大小限制:10MB - 支持CORS跨域 - RESTful API设计 ### 前端 - 纯HTML + CSS + JavaScript - 响应式设计,支持移动端 - 拖拽上传功能 - 现代化UI界面 ## 项目结构 ``` upfile/ ├── backend/ # Go后端服务 │ ├── main.go # 主程序入口 │ └── go.mod # Go模块定义 ├── frontend/ # 前端界面 │ └── index.html # 主页面 ├── uploads/ # 文件存储目录 │ └── .gitkeep # 保持目录结构 ├── start.sh # Linux/Mac启动脚本 ├── start.bat # Windows启动脚本 └── README.md # 项目说明 ``` ## API接口 | 方法 | 路径 | 描述 | |------|------|------| | GET | `/api/files` | 获取文件列表 | | POST | `/api/upload` | 上传文件 | | GET | `/api/download/:filename` | 下载文件 | | DELETE | `/api/files/:filename` | 删除文件 | | GET | `/api/preview/:filename` | 预览文件 | ## 2025-11-04 修复记录 - ✅ 添加doc文件上传时自动转换为docx格式功能 - ✅ 集成LibreOffice进行文档格式转换 - ✅ 保持现有功能不受影响,仅扩展支持doc格式 - ✅ 转换后的docx文件可使用现有预览功能 ## 2025-11-04 修复记录 - ✅ 添加doc文件上传时自动转换为docx格式功能 - ✅ 集成LibreOffice进行文档格式转换 - ✅ 保持现有功能不受影响,仅扩展支持doc格式 - ✅ 转换后的docx文件可使用现有预览功能 ## 2025-10-30 修复记录 - ✅ 创建项目基础结构 - ✅ 实现Go后端文件上传服务 - ✅ 创建前端文件管理界面 - ✅ 实现文件预览功能 - ✅ 添加启动脚本 - ✅ 完善项目文档 ## 快速开始 ### 方法一:使用启动脚本 **Linux/Mac:** ```bash chmod +x start.sh ./start.sh ``` **Windows:** ```cmd start.bat ``` ### 方法二:手动启动 1. **安装Go环境**(如果未安装) ```bash # 访问 https://golang.org/dl/ 下载安装 ``` 2. **启动后端服务** ```bash cd backend go mod tidy go run main.go ``` 3. **访问前端** - 打开浏览器访问 http://localhost:8080 ## 使用说明 1. **上传文件**:拖拽文件到上传区域或点击选择文件 2. **预览文件**:点击文件卡片上的"预览"按钮 3. **下载文件**:点击文件卡片上的"下载"按钮 4. **删除文件**:点击文件卡片上的"删除"按钮 ## 支持的文件类型预览 - **图片**:JPG、PNG、GIF - **文档**:PDF、TXT、HTML - **其他**:直接下载 ## 注意事项 - 上传文件大小限制为10MB - 文件存储在 `uploads/` 目录下 - 服务默认运行在 8080 端口 - 支持跨域访问,可集成到其他项目中