实现第三方服务—文件存储功能:
在前端的品牌管理模块需要文件上传存储功能,就来做一下吧
以前的项目可能是通过一个服务器上传到一处就可以了,但这个项目是分布式,分了很多个服务器
文件存储,就不能只存在一台服务器,要存在一个地方(例如:阿里云oss)
配置阿里云oss:
熟悉一下阿里云oss存储的资源术语:
解释:
i)一个项目一个Bucket
ii)Endpoint是存储的地址
iii)AccessKey相当于账号密码
新建一个bucket,以下是关键步骤:
i)低频访问:用于测试,一般项目是选标准访问
ii)读写权限:公共读,说明读不需要账号密码登录
传入oss的方式:
i)将文件传到后端服务器,通过后端服务器传到oss
缺点:文件要经过后端服务器,很慢
ii)通过前端直接传到oss
缺点:这样就要将账号密码,也就是accessKey、accessSecret到保存在前端,会出现安全问题
iii)前端调用后端接口得到一个签名,签名里包含了账号密码,再通过前端把文件上传到oss,这样文件就不需要先传到后台服务器,也不需要担心账号密码accessKey、accessSecret泄漏了