首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Http和文件上传-它到底是如何工作的(在幕后)

Http和文件上传-它到底是如何工作的(在幕后)
EN

Stack Overflow用户
提问于 2009-06-24 15:36:33
回答 2查看 1.3K关注 0票数 16

好吧,这可能看起来有点新手的问题,但我认识的许多Web开发人员对此并不完全了解。

基本上,如何通过FileUpload控件的上传事件将文件从网页文件输入框上传到web服务器(例如托管.net站点)?

我的理解是,向服务器发送了一个请求流的post,然后将其传递回浏览器,并开始将数据流式传输到服务器。

我的朋友说,他的理解是,浏览器将整个文件编码到post请求中,然后将(大量) post发送到服务器。

我认为情况不会是这样的,因为在收到完整的帖子之前,服务器将无法执行任何操作,因此无法构建ajax进度条,而在收到整个帖子之前,服务器可能只需将文件保存到磁盘。

那么它实际上是如何在浏览器和服务器之间工作的呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-06-24 15:46:22

你的朋友是对的。如果您想要一个AJAX进度条,您必须经历一些困难。

通常,技术是将iframe中的上载发送到服务器上的IHttpHandler,该服务器将进度存储在服务器范围的字典中,该字典由客户端组成的标识符组成,并包含在AJAX进度请求和上载post中。这样,当客户机发出AJAX请求时,处理该请求的服务器代码可以从该字典中读取该值,以查看服务器已经处理了多少字节的文件POST请求。

是的,这很复杂:)

票数 9
EN

Stack Overflow用户

发布于 2009-06-24 15:40:48

我认为你的朋友是对的,文件被编码到发送到服务器的帖子中。如果你真的想知道它是如何工作的,可以尝试在火狐中使用Tamper Data来查看实际的post数据。

预计到达时间:

AJAX风格通过在隐藏的iframe中执行post,然后使用AJAX请求在服务器端检查上传进度来上传您提到的工作。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1039148

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档