# 斯黄网盘 **Repository Path**: sihuangtech/sk-netdisk ## Basic Information - **Project Name**: 斯黄网盘 - **Description**: 斯黄网盘(SK-NetDisk)是一个基于 MERN 架构(MongoDB、Express、React、Node.js)的网络存储应用程序。用户可以上传、查看和下载文件,支持用户认证和权限管理,提供高效便捷的文件管理解决方案。 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-05-31 - **Last Updated**: 2025-09-07 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 斯黄网盘 | SK-NetDisk 斯黄网盘(SK-NetDisk)是一个基于 MERN 架构(MongoDB、Express、React、Node.js)的网络存储应用程序。用户可以上传、查看和下载文件,支持用户认证和权限管理,提供高效便捷的文件管理解决方案。 ## 功能 - 上传文件 - 查看文件列表 - 下载文件 ## 技术栈 - 前端: React - 后端: Node.js, Express - 数据库: MongoDB - 文件上传: Multer - ORM: Mongoose ## 安装 ### 先决条件 - [Node.js](https://nodejs.org/) (推荐使用 LTS 版本) - [MongoDB](https://www.mongodb.com/try/download/community) (确保 MongoDB 服务已启动) ### 克隆仓库 ```bash git clone https://github.com/your-username/sk-netdisk.git cd sk-netdisk ``` ### 安装依赖 在项目根目录下安装后端依赖: ```bash npm install ``` 进入 `client` 目录并安装前端依赖: ```bash cd client npm install ``` ## 项目结构 ``` sk-netdisk/ ├── client/ # React 前端代码 │ ├── public/ # 静态文件 │ │ └── index.html # HTML 模板 │ ├── src/ # React 组件和源代码 │ │ ├── components/ # React 组件 │ │ ├── App.js # React 主应用 │ │ └── index.js # React 入口文件 │ └── package.json # 前端依赖和脚本 ├── server/ # Node.js 后端代码 │ ├── controllers/ # 控制器 │ │ └── fileController.js # 文件控制器 │ ├── routes/ # 路由 │ │ └── fileRoutes.js # 文件路由 │ ├── config/ # 配置 │ │ └── db.js # 数据库连接配置 │ ├── models/ # 数据模型 │ │ └── File.js # 文件模型 │ ├── server.js # Express 服务器入口 │ └── package.json # 后端依赖和脚本 ├── uploads/ # 上传的文件存储目录 ├── .gitignore # Git 忽略文件配置 ├── README.md # 项目说明文件 └── package.json # 项目依赖和脚本 ``` ## 运行 在项目根目录下运行以下命令同时启动前端和后端服务: ```bash npm start ``` 前端应用将在 `http://localhost:3000` 运行,后端服务将在 `http://localhost:5000` 运行。 ## API 接口 - `POST /api/upload` - 上传文件 - `GET /api/files` - 获取文件列表 - `GET /api/download/:filename` - 下载文件 ## 贡献 欢迎贡献!请遵循以下步骤贡献代码: 1. Fork 本仓库 2. 创建你的分支 (`git checkout -b feature/AmazingFeature`) 3. 提交你的修改 (`git commit -m 'Add some AmazingFeature'`) 4. 推送到分支 (`git push origin feature/AmazingFeature`) 5. 打开 Pull Request ## 许可 本项目采用 MIT 许可。详细信息请参见 [LICENSE](LICENSE) 文件。