# openfile **Repository Path**: chilehaoduorou/openfile ## Basic Information - **Project Name**: openfile - **Description**: 使用Django实现的文件分享系统,实现搜索功能,分享功能,用户分享文件查询,写该项目的目的主要是用于保存一些电子书籍和学习资料,方便自己和其他人查找资料,所以对文件大小进行限制最大为5M。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 13 - **Forks**: 2 - **Created**: 2021-06-30 - **Last Updated**: 2024-04-28 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## openfile 使用Django实现的文件分享系统,实现搜索功能,分享功能,用户分享文件查询,写该项目的目的主要是用于保存一些电子书籍和学习资料,方便自己和其他人查找资料,所以对文件大小进行限制最大为5M。 + 注册:用户可用手机号或邮箱进行注册,使用Celery执行异步任务发送短信或邮件验证码。 + 登录:同样可使用用户名、手机号、邮箱多方式登录。发送AJAX请求,登录时校验IP和请求头User-Agent信息,若非常驻城市或常用主机,则需要使用验证码进行二次校验。 + 上传文件:可使用云存储,为减少重复文件,对每个上传的文件记录Hash值,若文件已存在,则直接在数据库中添加记录,不用保存真实文件。 + 文件搜索:使用Redis进行接口缓存,后期准备加上Elasticsearch,优化搜索。 + 文件分享:通过文件链接分享文件。 ![输入图片说明](https://images.gitee.com/uploads/images/2021/0701/175005_869ddec8_9083839.png "image-20210701174950898.png")