代码之家  ›  专栏  ›  技术社区  ›  Anil Namde

使用Ajax上传文件的不同方法

  •  1
  • Anil Namde  · 技术社区  · 15 年前

    要使用javascript上载文件,通常使用iframe方法,其中维护隐藏的iframe,然后使用iframe上载文件。

    然而,据说这不是一种可靠的文件上传方法,为此使用了flash。所以我不清楚这是怎么做到的?我是说flash和javascript在一起?

    另外,我想知道如果有其他方法上传文件?就像在客户机端一样,读取转换为二进制数据的文件,然后将其发送给其他人或类似的人。

    谢谢大家,

    2 回复  |  直到 15 年前
        1
  •  2
  •   Quentin    15 年前

    所以我不清楚这是怎么做到的?我是说flash和javascript在一起?

    ExternalInterface (或者,更常见的是,通过预滚闪光物体,如 YUI Uploader 这一切都是为了你)。

    我想知道如果有其他方法上传文件?

    爪哇。ActiveX控件。

    它们使用与flash相同的原则,但支持度较低。

    就像在客户端一样,读取文件转换成二进制数据

    文件已经是二进制数据(除非它是文本文件),但如何读取?在标准安全上下文中,javascript不能访问文件系统。

        2
  •  1
  •   Pekka    15 年前

    iframe方法本身没有任何错误。基于flash的上传增加了更多的可能性,比如显示一个上传栏,客户端图像的大小调整,更好和更可靠的过滤选项(文件类型/大小)等等。

    基于flash的上传程序可以规避一些限制 <input type=file> 例如,元素可以完全设置“上载”按钮的样式。

    查看一个现成的解决方案,看看它们是如何工作的。我最喜欢的是