在Internet Explorer上,標準HTML文件上傳表單還允許直接輸入文件名(而不是使用文件選擇器對話框)。這使得輸入不存在的文件成爲可能。在其他瀏覽器上(不允許你這麼做),如果在選擇文件後刪除文件,我認爲這種情況仍然會發生。當您在HTML表單中選擇一個不存在的文件進行上傳時會發生什麼?
爲了處理這個問題引起的錯誤(如this one),我需要在服務器端添加一些驗證代碼(這隻有在請求實際發送到服務器時纔有可能,而我不知道在這一點上肯定),或者在客戶端(不能很直接,因爲你不能從JavaScript沙箱訪問實際的文件)。除此之外,唯一的(也可能是最好的)選項似乎是用CSS魔法隱藏輸入框,就像GMail對附件文件所做的那樣。
那麼,當您嘗試上傳不存在的文件時會發生什麼? 是否仍然發送POST請求?或者瀏覽器會中止,如果有,我該如何檢測?
可能重複的[試圖上傳不存在的文件在Internet Explorer中,表單不提交](http://stackoverflow.com/questions/691323/trying-to-upload-a-non-存在的文件在互聯網瀏覽器表單不提交) – 2012-08-17 23:11:59