我怎样才能做一个文件上传并将结果返回到同一页?(How can I do a File Upload

2019-11-02 22:15发布

我需要做一个文件上传,并将结果返回到相同的页面。 在<form>也有一对夫妇将在POST发送数据字段。

我不能使用HTML 5由于有限的浏览器的支持,并且不幸的是,AJAX文件上传解决方案,我已经看到了使用HTML 5,我可以做JavaScript中的职位,但我还没有看到这样做了文件上传。

我的服务器是用Java编写但不应该的问题。

有没有办法让这种POST的结果返回到相同的页面?

Answer 1:

我建议你看一看jQuery的表格插件如何做“传统”文件上传。 基本上,它使用iframe提交表单的背景。 http://malsup.com/jquery/form/#file-upload



Answer 2:

闪光,Silverlight和HTML5文件API之外的普遍接受的方法,是让你<form>后一种无形的<iframe>在页面上。

<iframe>的位置是网页或文件处理程序,上传引擎盖下您的文件。 然后,您可以在主页上运行的JavaScript函数,它轮询服务器,并定期检查是否下载已经完成。

当您将文件上传到<iframe>你需要确定,无论是客户端和服务器知道上载的一些方法。 要做到这一点的方法之一是生成客户端上的GUID,并张贴有该文件,你的其他数据字段一起。 服务器应该记住这GUID的保持接收文件数据前,通过链接进度和GUID一起跟踪上传进度。 由于已经生成的客户端知道的GUID,它可以发送请求到服务器通过发送它产生的是什么来获取上传的进度。



Answer 3:

我结束了使用jQuery的表单插件 。 它支持使用此选项首部发送基本身份验证凭据:

headers  : { Authorization: basicAuthCredentials}

这也是我需要做的。



文章来源: How can I do a File Upload and return results to the same page?