Warm tip: This article is reproduced from serverfault.com, please click

amazon s3-AWS S3 POST对象表单如何启动上传

(amazon s3 - How does an AWS S3 POST object form initiate an upload)

发布于 2020-11-30 17:18:51

我正在使用来自HTML表单的POST对象将图像从用户的设备上传到S3存储桶。一切工作正常,但我不明白在将表单数据(文件名,签名,策略等)发布到其URL之后,S3服务器如何从客户端浏览器启动上传。图像数据在客户端设备上的文件中,并且不包含在表单中,仅文件名在那里。上载过程在哪里开始?S3服务器如何告知客户端浏览器上载图像数据?在我不知道的帖子/响应中,也许Web服务器和浏览器之间存在更多的通信。任何见识将不胜感激。

Questioner
glez
Viewed
0
glez 2020-12-08 01:58:07

进一步的研究表明,当表单具有输入type =“ file”控件时,浏览器本身会自动将每个文件格式化为表单提交的一部分。该文件成为提交的表单数据的一个内在部分,服务器端处理知道按原样查找它。

HTML4输入type =“ file”规范

“以下示例显示了如何通过表单提交用户指定文件的内容。系统会提示用户输入其姓名以及应使用表单提交其内容的文件名列表。通过指定enctype值在“ multipart / form-data”中,每个文件的内容都将打包以在多部分文档的单独部分中提交。”