Trang web này sẽ có chức năng hạn chế trong khi chúng tôi trải qua bảo trì để cải thiện trải nghiệm của bạn. Nếu một bài viết không giải quyết được vấn đề của bạn và bạn muốn đặt câu hỏi, chúng tôi có cộng đồng hỗ trợ của chúng tôi đang chờ để giúp bạn tại @FirefoxSupport trên Twitter và /r/firefox trên Reddit.

Tìm kiếm hỗ trợ

Tránh các lừa đảo về hỗ trợ. Chúng tôi sẽ không bao giờ yêu cầu bạn gọi hoặc nhắn tin đến số điện thoại hoặc chia sẻ thông tin cá nhân. Vui lòng báo cáo hoạt động đáng ngờ bằng cách sử dụng tùy chọn "Báo cáo lạm dụng".

Tìm hiểu thêm

How does Firefox and AWS S3 initiate an upload after a form post to S3

  • 1 trả lời
  • 1 gặp vấn đề này
  • 16 lượt xem
  • Trả lời mới nhất được viết bởi glez

more options

I'm trying to understand how AWS pulls a file from a client device after I post an upload request to AWS S3. HTML is asynchronous and I can't figure out how, after I post the file name and such, an upload is started.

I’m uploading images from a user’s device to a S3 bucket using a HTML form. Everything is working fine but I don’t understand how the S3 server can initiate an upload from a client browser after the form data (file name, signature, policy, etc.) has been posted to its URL. The image data is in a file on the client device and is not contained in the form, only the file name is there. Where in the process is the upload started and how does the S3 server tell the client browser to upload the image data?

Perhaps there’s more communication between the web server and browser during a post/response that I’m not aware of. Perhaps AWS and Firefox have a WebSocket open to perform the file upload?

Any insight would be appreciated.

I'm trying to understand how AWS pulls a file from a client device after I post an upload request to AWS S3. HTML is asynchronous and I can't figure out how, after I post the file name and such, an upload is started. I’m uploading images from a user’s device to a S3 bucket using a HTML form. Everything is working fine but I don’t understand how the S3 server can initiate an upload from a client browser after the form data (file name, signature, policy, etc.) has been posted to its URL. The image data is in a file on the client device and is not contained in the form, only the file name is there. Where in the process is the upload started and how does the S3 server tell the client browser to upload the image data? Perhaps there’s more communication between the web server and browser during a post/response that I’m not aware of. Perhaps AWS and Firefox have a WebSocket open to perform the file upload? Any insight would be appreciated.

Giải pháp được chọn

Further research has shown that the browser itself automatically formats each file as a part of the form submission when the form has an input type="file" control. The file becomes an intrinsic part of the form data submitted and the server side processing knows to look for it as such.

HTML4 input type="file" spec

"The following example shows how the contents of a user-specified file may be submitted with a form. The user is prompted for his or her name and a list of file names whose contents should be submitted with the form. By specifying the enctype value of "multipart/form-data", each file's contents will be packaged for submission in a separate section of a multipart document."

Đọc câu trả lời này trong ngữ cảnh 👍 0

Tất cả các câu trả lời (1)

more options

Giải pháp được chọn

Further research has shown that the browser itself automatically formats each file as a part of the form submission when the form has an input type="file" control. The file becomes an intrinsic part of the form data submitted and the server side processing knows to look for it as such.

HTML4 input type="file" spec

"The following example shows how the contents of a user-specified file may be submitted with a form. The user is prompted for his or her name and a list of file names whose contents should be submitted with the form. By specifying the enctype value of "multipart/form-data", each file's contents will be packaged for submission in a separate section of a multipart document."