【发布时间】:2014-08-13 12:59:32
【问题描述】:
我想设置一个兼容 IE8 的跨域文件上传解决方案。我一直在使用blueimp's JQuery File Upload plugin with the iframe transport option。
上传效果很好,但我无法从服务器端获取上传结果。用于解析的 result.html 文件的重定向选项似乎是解决方案,但问题是我无法访问托管表单的服务器来部署 HTML 文件。在这种情况下,有没有其他方法可以在不将 HTML 文件部署到源服务器的情况下检索上传结果?
【问题讨论】:
-
如果您无权访问正在上传文件的服务器,我认为上传完成后没有办法将数据传回给父级。我能想到的唯一方法是从 iframe 进行长民意调查或发布消息。
-
该文件实际上正在上传到我有权访问的服务器。我无权访问正在呈现文件上传控件的服务器。服务器 A 向服务器 B 请求 JS 文件。该 JS 文件呈现一个文件上传控件,该控件使用 AJAX 将上传的文件发送到服务器 B。我无权访问服务器 A,但我可以完全访问服务器 B。
-
这意味着您还可以访问呈现这些控件的 JS 文件?如果是这样,是的,我们可以通过 Post Message 来满足您的要求。在我给出实际答案之前让我知道这是真的。
-
是的,我们可以访问被调用的 JS 文件。但据我了解,PostMessage 仅受 Chrome 支持,对吗?
-
不正确,PostMessage 是 IE8+ & 基本上所有其他浏览器。 Can I Use Stats.
标签: jquery internet-explorer-8 cross-domain jquery-file-upload