步骤
file01 / file02 分别是两台java服务
功能:
- 主要负责接收用户上传的文件存储在指定目录 并记录(上传时间、上传人、文件信息(大小,源文件名,存储后的文件名 ....) 文件权限(共享、私有))。
- 负责接收处理用户的下载请求,用户可以根据文件id进行下载,只能下载自己上传或共享的文件。
- 提供查询文件列表的接口,用户只能查到自己上传的文件和文件权限是共享的文件信息。
要求:
- file01 file02这两台java服务 不能直接访问对方的存储路径,即如果A用户通过请求file01服务需要下载B用户在file02服务上传的共享文件, 只能是 A用户 --请求> file01服务 --请求> file02服务 在由file02服务找到文件后进行返回给file01服务 --返回> A用户
- file01 获取 file02 服务的资源需要使用feign技术 ,file02服务获取file01服务的资源使用 Request 或者 RestTemplate技术
提示:
- 接收上传的文件实际存储的时候需要改名 uuid
- 使用postman访问是,把人员信息放到请求头中,避免接口还需要额外传人员信息,后端获取请求头的数据库就可以拿到人员信息。
- axure RP 画个流程图
- PDManer 管理表
进阶:
- 文件的安全性
- 分片上传,断点续传
- 额外做了哪些优化?