小编典典

为什么不能异步上传文件?

ajax

经过一整天的研究和尝试,我终于放弃了 纯AJAX的
上传文件(ps:本文如何与JQuery异步上传文件?埋了我的最后希望)

我的问题可能没什么意义,但是我仍然想知道为什么ajax(或XMLHttpRequest)不能处理这个问题?为什么文件不能像真正的httprequest那样传输?


阅读 291

收藏
2020-07-26

共1个答案

小编典典

出于安全原因,JavaScript无法读取本地文件,因此我们无法使用AJAX发送数据。

但是,您可以发布标准HTML表单,并将表单目标设置为页面上不可见的iframe。然后,该iframe可以使用服务器端代码来处理上传。

如果您使用AJAX的原因是因为文件上传时需要进度条,则可以使用服务器端静态变量存储文件上传进度,然后使用AJAX简化操作,对另一个HTTP页面的定时请求,该页面仅返回上传进度。

2020-07-26