因為uploadify是不會自動傳送session值的,所以當session被攔截后,它的請求是發不出去的(補充,還有一種情況就是uploaddify是使用flash來處理文件文件上傳,而在在非IE瀏覽器(Firefox,Chrome)下使用flash方式向服務器發起請求,是會新生成一個session的(此時舊的session則丟失了),如果要避免這個問題,需要把當前的sessionId作為形參傳給處理類);
$("#image").uploadify({ swf: 'uploadify/uploadify.swf',// 上傳使用的 Flash uploader: 'upload;jsessionid=${pageContext.session.id}?type=1', // 服務器端處理地址 width: 60, // 按鈕的寬度 height: 23, // 按鈕的高度 buttonText: "選擇圖片", // 按鈕上的文字 buttonCursor: 'pointer', // 按鈕的鼠標圖標 fileObjName: 'Filedata', // 上傳參數名稱 // 兩個配套使用 fileTypeExts: "*.jpg;*.png;*.bmp;*.jpeg;*.gif", // 擴展名 fileTypeDesc: "請選擇文件", // 文件說明 auto: true, // 選擇之后,自動開始上傳 multi: false, // 是否支持同時上傳多個文件 debug: true, fileSizeLimit: 2*1024, removeCompleted: false, //是否移除掉隊列中已經完成上傳的文件。false為不移除 queueSizeLimit: 1, // 允許多文件上傳的時候,同時上傳文件的個數 /* onUploadSuccess : function(data){ //alert(data); } */ });
注意:jsessionid前面用';' 不是'?'