现在要做一个文件上传的功能,需要在前端校验文件大小,并且同时支持IE7,IE8,IE9,FireFox,chrome,360浏览器,要求在校验的过程中不受浏览器安全级别设置的影响,也不会跳出什么安全提示。
在网上搜了一下,找不到什么解决方案,要么会有安全提示,要么压根就不起作用。自己也上各大网站看了一下,确实很难找到类似的应用,目前唯一发现能够做到这一点的只有exchange的邮件附件大小检测,但是不知道微软是怎么做到的,没有搜到相关资料。
这个貌似要用flash来做
swfupload 检测fileSize
用 swfupload 控件实现上传 ,可以在前端获知文件大小。这个只能有flash做到,因为考虑到安全问题,js不允许对本地文件进行复杂操作。
不用纠结于用前端来实现,用后台同样可以实现,其实上传时浏览器会将文件的大小记录在请求头里。
就如同大文件上传一样,通过HttpWorkerRequest获取上传文件的大小,但并不保存文件,这样既可以判断文件大小、不需要上传文件,也可以在适合大小要求时立即保存文件。
我用的是java tomcat服务器,貌似这个对象是C#里面的,不知道J2EE里面是否有类似的应用
@freeman_rain:
.net里Request对象是已经封装好了的所以要绕一个弯才能取到原始请求信息,貌似java里更容易吧,直接取到的就是最原始的请求信息,然后取到Content-Length。
如果是图片的话可以使用Image对象判断大小.
http://www.cnblogs.com/jackyrong/archive/2008/07/02/1234285.html