oma*_*oma 6 windows macos desktop-application file-upload ruby-on-rails
目标: 允许用户选择一个文件夹,然后以递归方式查找与文件模式匹配的所有文件并将其传输(POST)到我的Web服务器
本质上只是一个更高级的上传对话框......
由于安全原因,标准网络技术(我们使用的是plupload)不支持这一点.
附加要求:易于使用/从webapp安装.需要SSL和应用程序用户凭据.一些其他数据,如记录ID(从Web应用程序获取或创建)来关联上传文件将是不错的.
Web应用程序本身是用Ruby on Rails编写的,但是如果我需要某种本机Mac和Windows(=我的用户的80%)桌面客户端,这应该不重要.
我有什么选择?
用于执行此操作的代码和对开源库的引用是一个奖励.
我建议创建一个 Adobe Air 应用程序。
\n\n您可以重用现有的 plupload js 代码,并使用 adobe air api 对其进行扩展。理想情况下,它将是一个大部分静态的应用程序,但会调用服务器来创建策略文档,并在上传时执行您想要执行的任何簿记操作。重点关注从 JavaScript 访问 AIR API 类。然后查看filesystem.File类。
\n\nFlash 的渗透率约为 99.3%,用户只需单击“安装我的上传器”,如果需要,air 框架就会自动安装。Air 也在 Android 和 iDevices 上运行,因此您的应用程序可能可供 99.999% 的用户及其妈妈使用。
\n\n我花了一分钟才找到它,但这里是适用于 HTML 开发人员的 Adobe\xc2\xae AIR\xc2\xae API 参考
\n\n哦,看看我在他们的例子中发现了什么:
\n\nvar directory = air.File.documentsDirectory;\n\ntry\n{\n directory.browseForDirectory("Select Directory");\n directory.addEventListener(air.Event.SELECT, directorySelected);\n}\ncatch (error)\n{\n air.trace("Failed:", error.message)\n}\n\nfunction directorySelected(event) \n{\n directory = event.target ;\n var files = directory.getDirectoryListing();\n for(var i = 0; i < files.length; i++)\n {\n air.trace(files[i].name);\n }\n}\nRun Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
1024 次 |
| 最近记录: |