uploadify

最近在项目中使用JQuery Uploadify插件实现文件上传,很方便。但是问题是在非IE环境下会出现session丢失的情况,查了很多资料,发现原来非IE换进(Firefox,Chrome)使用flash来处理文件文件上传。在非IE环境下使用flash方式想服务器发起请求(具体细节我也不太清楚),会新生成一个session,如果要避免这个问题,需要把当前的sessionId作为形参传给servlet类,如下:

<script type=”text/javascript”>
$(document).ready(function() {
$(“#fileupload”).uploadify({

‘uploader’       : ’scripts/uploadify.swf’,
’script’         : ‘<%=path%>/my_upload.action;jsessionid=<%=session.getId()%>’, //可以很有效的解决在ff下的session问题
‘cancelImg’      : ’scripts/cancel.png’,
‘queueID’        : ‘fileQueue’,
‘fileDataName’   : ‘up’,
‘auto’           : false,
‘multi’          : true,
‘buttonText’     : ‘BROWE’,
‘fileDesc’       : ‘支持格式:jpg/gif/jpeg/png/bmp.’,
‘fileExt’        : ‘*.jpg;*.gif;*.jpeg;*.png;*.bmp’,
onAllComplete : function (){
alert(“上传完毕”);
},
onError: function(event, queueID, fileObj) {
alert(“文件:” + fileObj.name + “上传失败”);
}
});
});
</script>

你可能感兴趣的:(uploadify)