我们新增的品牌logo,希望存储起来。如果存储到我们的服务器,如果我们这个服务部署了多个服务器,这就导致每个服务器的数据不一致。所以我们将前端提交的数据统一上传到一个地方,我们选择阿里云的对象存储OSS。
我们该如何将数据提交到OSS呢?
- 普通上传方式
这种方式,如果提交数据量太大,会占用很大的带宽,就会导致后端来处理其它请求的带宽变少。 - 服务端签名后直传(推荐)
我们先从前端往后端发送一个请求上传的Policy,获取到我们的登录的用户名和密码(写在后端中),将用户名和密码加密返回给前端,然后前端将文件和加密后的数据提交给OSS,由OSS来验证加密后的数据是否正确 - 直接从前端发送数据给OSS(最不推荐)
这种方式我们必须要将账号密码写在js中,容易泄露