对象存储上传咨询

发布于 2022-09-13 01:10:06 字数 147 浏览 34 评论 0

springboot前后端分离,前端选择文件后调用后端上传接口,再把文件上传到对象存储,上传进度是在前端做吗?后端调用上传对象存储是用异步吗?目前测试同步上传的话,如果是大文件,前端上传到后端上传完了,但是因为还得上传到对象存储、所以还得等一会请求才能结束。这种如何处理比较好呢?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

逆光飞翔i 2022-09-20 01:10:06

Web 端直传给云存储就好了,不需要走一遍自己服务器,浪费那带宽干啥。

据我所知的云存储服务的文件上传接口都是 FormData 格式的,你后端接口要返回的其实就几个数据:

  • 要上传文件的实际 URL,通常来说是预签名好的,客户端只管往这个地址上 POST 就好了。
  • FormData 里 File 对象所在子项的 Key 是什么(就是 formData.append() 的第一个参数)。
  • FormData 里还需要其他的额外参数(如果有的话)。
  • 请求标头(Headers)里还需要其他的额外参数(如果有的话)。

前端通过后端接口拿上述几个数据,然后拼装成一个 AJAX 直接上传到云存储上就可以了。

结合我之前回答过你的问题,如果要换云存储,后台改配置就好了,对于前端来说是无感知的。

P.S. 除非有一种情况下才需要服务器中转,那就是你的业务系统对文件传输的安全性要求极高,不希望客户端能绕开你直接与云存储服务通信。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文