如何从Flex Web应用程序访问本地文件系统?

时间:2011-01-05 10:41:25

标签: flex adobe air

我正在尝试从Flex Web应用程序访问本地文件系统。 我知道这很难,但我认为必须有办法。 Flex应用程序是否可以使用AIR组件,或者Web应用程序可以调用某些AIR模块来选择文件并上传?

2 个答案:

答案 0 :(得分:0)

您可以使用FileReference的方法让用户选择要打开的文件(加载到闪存,上传到服务器)或保存(从服务器或闪存中的字节)。

答案 1 :(得分:0)

基于Web的Flex / Flash应用程序无法直接访问基于AIR的API。它们不是内置在Flash Player中的,而是内置于AIR运行时的扩展。您无法直接访问它们,因为它们不在那里。

如果您在用户的本地计算机上安装了AIR应用程序,理论上您可以将该应用程序用作localConnection的代理。这样,AIR应用程序可以直接访问文件系统,由基于浏览器的应用程序触发。不过,我不确定用户交互是如何工作的。

如果客户端计算机上安装了服务器软件,则可以使用RmoteObject / HTTPService / WebService命令从Flex触发文件处理命令。这不会给用户任何交互能力,除非您对客户端计算机有很强的控制权,否则通常不实用。

这两种方法都会出现应用程序安装的噩梦;这首先几乎击败了基于浏览器的应用程序的目的。