项目简介
此项目是基于Go语言构建的分布式网盘系统,提供文件上传、下载、查询、修改、删除等基础功能,同时具备用户注册与登录功能。系统实现了文件分块上传与合并,有秒传优化提升上传效率,还借助Redis缓存机制实现断点续传。
项目的主要特性和功能
- 文件操作:支持文件上传、下载、查询元信息、修改文件名、删除,可通过HTTP接口完成。
- 分块上传与合并:大文件支持分块上传,上传完成自动合并。
- 秒传功能:比较文件哈希值,若文件已存在于数据库,可快速上传。
- 用户管理:提供注册、登录功能,部分文件操作需权限校验。
- 断点续传:利用Redis缓存文件分块信息,可从断点处继续上传。
- 文件查询与优化显示:可查询文件信息,优化文件大小显示,支持日期格式化显示。
安装使用步骤
- 环境准备:确保安装Go语言环境,配置好MySQL和Redis服务器。
- 配置调整:修改
config
目录下的配置文件,保证MySQL和Redis连接信息正确。 - 编译运行:使用
go build
命令编译项目,运行生成的可执行文件。 - 系统访问:通过浏览器访问系统的HTTP接口,如
http://localhost:8080/file/upload
上传文件,http://localhost:8080/file/download?filehash=文件sha1值
下载文件,完成文件操作及用户注册、登录。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】