I’d like to understand what happen under the hood when you do an web upload.
I guess one of these:
- The file is loaded in memory by the browser, sent to the web server buffer memory, and then the app is notified to collect it.
- The file is being readed by the browser and at the same time sent to the web server, that can start to save the bytes progresively.
I’ve tried to upload a very large file, and put a breakpoint on the frist line of the method receiving the upload. I’ve seen how the browser toke a lot of time loading… but the breakpoint was still not hit, and after a while the breakpoint is hit.
I want to understand this, because in the worst scenario, if I allow big uploads, they could blow up the server memory at some point.
What does happen if I upload a 2Gb file? (considering that the web server/app accepts that length) would it take 2Gb of server memory?
Cheers.
The documentation for the HttpPostedFile class (which represents a file uploaded to the server in ASP.NET) specifies: