檔案上傳是 web 開發肯定會碰到的問題,而資料夾上傳則更加難纏。網上關於資料夾上傳的資料多集中在前端,缺少對於後端的關注,然後講某個後端框架檔案上傳的文章又不會涉及資料夾。今天研究了一下這個問題,在此記錄。
先說兩個問題:
是否所有後端框架都支援資料夾上傳?
是否所有瀏覽器都支援資料夾上傳?
第乙個問題:yes,第二個問題:no
只要後端框架對於表單的支援是完整的,那麼必然支援資料夾上傳。至於瀏覽器,截至目前,只有 chrome 支援。 chrome **好!
不要期望檔案上傳這個功能的瀏覽器相容性,這是做不到的。
好,假定我們的所有使用者都用上了 chrome,要怎麼做才能成功上傳乙個資料夾呢?這裡不用drop
這種高大上的東西,就用最傳統的。用表單 submit 和 ajax 都可以做,先看 submit 方式。
method="post"
enctype=multipart/form-data>
type='file'
name="file"
webkitdirectory >
uploadbutton>
form>
我們只要新增上webkitdirectory
這個屬性,在選擇的時候就可以選擇乙個資料夾了,如果不加,資料夾被選中的時候就是灰色的。不過貌似加上這個屬性就沒法選中檔案了...enctype=multipart/form-data
也是必要的,解釋參見這裡
如果用 ajax 方式,我們可以省去,只留下
就 ok。
'file' webkitdirectory >
id="upload-btn"
type="button">uploadbutton>
但是這樣是不夠的,關鍵在於 js 的使用。
var files = ;
$(document).ready(function());
});$("#upload-btn").click(function()
$.ajax(
});});
java資料夾上傳
最近公司做工程專案,實現資料夾上傳。網上找了一天,發現網上很多 都存在相似問題,最後終於找到了乙個符合要求的專案。工程如下 這裡對專案的資料夾傳輸功能做出分析,怎麼實現資料夾上傳的,如何進行資料夾上傳的。執行 資料夾所在位置 c users liu desktop httpdebuggerpro v...
JS資料夾上傳解決方案
一 概述 二 range 用於請求頭中,指定第乙個位元組的位置和最後乙個位元組的位置,一般格式 ranges unit first byte pos last byte pos 1.以下幾點需要注意 1 這個資料區間是個閉合區間,起始值是0,所以 range bytes 0 1 這樣乙個請求實際上是...
php選擇資料夾上傳
php用超級全域性變數陣列 files來記錄檔案上傳相關資訊的。1.file uploads on off 是否允許通過http方式上傳檔案 2.max execution time 30 允許指令碼最大執行時間,超過這個時間就會報錯 3.memory limit 50m 設定指令碼可以分配的最大記...