2012-01-29 78 views
6

我知道如何在服務器端語言中做到這一點,但我想知道是否有一種簡單的方法(如在沒有活動的X中)。谷歌搜索只給了我javascript的方式列出來自用戶計算機的文件。JavaScript以列出網絡服務器上目錄中的所有文件

如何使用javascript列出服務器上的所有文件。也就是說,如果我有一個文件夾/ gallary,那裏可以有許多子導演,/ gallary/sports,/ gallary/california,/ gallary/christmas。每個子目錄包含n個圖像。

我怎樣才能得到JavaScript來列出所有的子目錄以及所有的圖像。

+3

你不能。 JavaScript在另一臺計算機上運行,​​當然無法訪問服務器的文件系統。 – 2012-01-29 23:57:22

+0

我不認爲這是由於服務器安全性,你可以做到這一點。 Javascript是客戶端和執行客戶端。 – Mike 2012-01-29 23:58:40

+2

只有在服務器生成目錄中的文件列表的索引頁時,纔可以使用javascript。否則,您需要服務器端腳本來生成此類列表,以便通過請求將其返回給javascript。 – Cheery 2012-01-30 00:13:29

回答

2

由於瀏覽器中的javascript無法直接訪問服務器的文件系統,因此您可能需要一些服務器端腳本,例如PHP,Perl,ASP等將文件系統內容發送到網頁(可能通過Ajax)以及然後使用JavaScript格式將文件系統內容轉換爲所需的格式,例如使用文件樹控件在此答案中提及:https://stackoverflow.com/a/9057959/74585

如果您不能使用任何服務器端腳本,那麼也許您可以硬編碼JavaScript文件中的類別(假設類別變化不是很頻繁),並依次對圖像進行編號?然後,您的JavaScript可以通過嘗試加載圖像類別文件夾和數字來查找圖像。然後檢測圖像何時不會通過誤差加載,並停止顯示上一個/下一個按鈕。

不需要服務器端腳本的更多左場解決方案可能是在通過FTP連接的工作站計算機上創建腳本(例如perl),查看所有文件夾和文件並創建JSON或包含文件系統內容的XML文件。然後你的javascript可以調用生成的文件並訪問文件系統。缺點是每次需要添加其他文件時都需要重新運行工作站腳本。

+0

當我點擊它時,你的答案中的鏈接會導致同樣的問題。 : - \ – 2012-11-28 14:06:02

+0

遞歸!我認爲他們刪除了另一個問題並重定向到了這裏。 – 2014-05-24 08:04:27

相關問題