我寫了這個simple Play-uploadify demo。爲什麼我只能使用Play和uploadify上傳一個文件?
我想要一個上傳按鈕,每次按下它時都會自動上傳圖像。
出於某種原因,只有第一次按下按鈕,我才能上傳。按下按鈕一次後,除非我「取消」以前的上傳,否則進一步按下不會導致任何事情發生。
(我不明白與auto
模式取消上傳的意義也許問題在某種意義上,我從來沒有下載「完整」?)
這裏是我的操作方法:
public static void upload(File file, long userId){
System.out.println("Uploaded file name " + file.getName() +
" by user " + userId);
}
和呼叫到uploadify:
$(function() {
$("#uploader").uploadify({
uploader : '/public/libraries/uploadify/uploadify.swf',
script : '/Application/upload',
cancelImg : '/public/libraries/uploadify/cancel.png',
folder : '/uploads',
fileExt : '*.jpg;*.gif;*.png',
fileDesc : 'Image Files',
fileDataName: 'file',
scriptData: {userId: 123},
auto: true
});
});
而且,上傳似乎從來沒有完成 - 當我添加一個onComplete
處理程序,它ð沒有火。
爲什麼會這樣? – ripper234
我已經更新了答案。 –
我正在開發模式下工作 - 但問題似乎與播放線程無關。 Play操作方法只包含一個'println()',並立即返回。即使完成後,客戶端也無法啓動上傳另一個文件。也許我應該爲Uploadify渲染一些東西來理解我正確處理上傳? – ripper234