[原]as3 flash web 应用 (4)批量上传之 完全实现百度图片上传
2010年06月14日 星期一 02:36 由于某度过于恶心等众所周知的原因,搬离写了5年的渣度空间,准备把技术性的文章定在CSDN了。这些都是文章备份。勿怪。。 这次完成了百度flash上传UI界面的全部功能。编码基本上算是独立完成,以自己的方法实现了它的UI功能。参考了百度的100行左右的关于检测重复文件引用的代码。接下来就要实现与js和php的交互了。 从研究百度的上传UI我学到了不少交互方面的知识。 百度flash上传UI功能包括: (当然这里不指与服务器和js的进一步交互,以及用户身份验证机制) 1,显示真实的上传进度; 2,批量缩略图读取与上传; 3,附加一些信息比如是否允许评论和转帖; 4,可将将选择的缩略图从上传队列任意位置删除; 5,上传的暂停和中途添加; 6,旋转图片; 7,在客户端即可验证上传的文件类型,编码,大小是否合法。 当然,根据我2晚+周末的开发和使用,百度的flash图片上传UI还有几个小小的不足: 首先,识别可上传的文件方面有些不足。 1,一旦添加的文件是 0字节大小的文件, 无法单独删除错误文件,不报错,必须点击“全部删除”。而且删除后添加的任何文件不能显示预览图,不能载入,不能上传。 2,识别欺骗性文件的不足:比如我把 一个小的rar压缩包改名成gif后缀,不报错,点击上传后才出现上传错误。 3,关于避免强制输入文件名时候的不足: 比如我打开文件浏览框后手动输入一个swf.rar文件名(前提是文件夹里有)点击上传,此文件后面队列正确的文件也无法进行上传,停止响应,必须重新刷新页面。 4, 当选择好了文件,出现预览图后,再在磁盘里改变文件名,上传工具将中止改名图片的上传,此图片之后的文件也无法上传。不报错。无响应。必须刷新。 5, 一旦网络链接不良,导致传输过程时候短暂掉线,将无法上传所有中断后的文件。就算只断开一瞬间也不行。而且不报错误,无响应,必须刷新。 上面5点感觉开发人员有点像在使用鸵鸟法则。出现了错误不处理,只return,错误报告不明显,用户体验差了点。 我所说的这5点不足,我都在程序里解决了,文件错误分别会在预览期间报“文件大小错误”,“文件编码错误”,“文件类型错误”,“文件是否存在”和“网络链接错误”并且在上传之前会提示你删掉错误文件,而在上传过程中如出现断网,或者找不到网址,仍然可以选择暂停或者抛开错误图片继续上传接下来的文件。 然后,说到错误报告不明显,还有: 接下来,关于文件的批量操作: ====================================================== 文件下载地址 (我放在了CSDN,需要6分才能下载。不过下载完后打个分评论一下会返回给你6分。MIT使用许可。允许自由使用,修改,但须保留版权信息。) ============================================================ ++++++++++++更新+++++++++++++++++++++++++++ 很多人遇到安全设置问题,把这个存成?crossdomain.xml?放在服务器www根目录下就可以了 <?xml version="1.0"?> ? <cross-domain-policy> ? ? <allow-access-from domain="*" /> ? </cross-domain-policy> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |