uploadify 302 java,Java解决火狐浏览器使用uploadify上传报错302以及报IO error错问题

最近使用同时添加的上传控件uploadify,可以支持批量上传,但是控件是用Flash做的,在IE、360浏览器还好,但是在火狐浏览器出现了上传报错Http error 302,网上查询到是因为由于jquery uploadify是借助flash来实现上传的,每一次向后台发送数据流请求时,ie会自动把本地cookie存储捆绑在一起发送给服务器。但 firefox、chrome不会这样做,他们会认为这样不安全。在火狐浏览器下 uploadify 利用flash进行post上传时没有包含原来的session信息,而是重新创建了一个session,新的session无法通过登录验证,因此就会报错302。

网上说的解决办法是在uploader属性后面将session追加进去

;jsessionid=,代码如下:

但是我这样试过了还是解决不了问题,依然报错302.当时很是郁闷。

然后我还了一种思路,将session的值保存在页面中,然后在JavaScript中直接获取,这样一试,就成功了。

具体做法,我在导航栏总页面进行session的保存,

然后在JavaScript中将其值获取

/**

* 上传图片公共方法

* @param fileID 上传文件按钮的ID值

* @param imgID 上传后图片预览img的ID值

* @param nameValue uploadfile中bean属性的ID值,用于传入后台

* @param divShowId 之前隐藏的DIV用于显示图片的将其展示出来

*/

function uploadFileUtil(fileID,imgID,nameValue,divShowId){

$("#"+fileID).uploadify({

height : 20,

swf :basePath+'/page/js/uploadify/uploadify.swf',

uploader :basePath+'/admin/product/upload.do;jsessionid=' + sessionId,

buttonText:"选择文件",

width : 60,

queueSizeLimit :1,

'onUploadSuccess' : function(file, data, response) {

//alert(data);

var mixed=data.split(",");

var id=mixed[0];

var imgPath=mixed[1];

$("#"+imgID).attr("src","/"+replaceImgURL(imgPath));

/* $(singlePicShow).append($("#singlePic")); */

$("#"+nameValue).val(id);

$("#" + divShowId).show();

/* var img = $('#imgdiv1')

img.attr('display:block') */

}

});

}

这样就不保错了,如果更改后出现上传报错IO error的话,将火狐浏览器关掉,清空缓存,然后再打开试试,应该就好了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值