簡體   English   中英

將對文件的引用存儲在瀏覽器的本地存儲中

[英]Store reference to a file on disk in a browser's localstorage

在當前的File API看來,訪問以前添加的文件的唯一方法是將整個File Object存儲在本地存儲中。 添加多個文件時,這會很快吞噬瀏覽器的內存。

我想知道是否有一種方法可以只在本地存儲中存儲對該文件的某種類型的引用,並能夠使用其引用來訪問該文件。

我嘗試使用URL.createObjectURL函數生成文件的URL,但該URL與文檔綁定,並在重新加載頁面時過期。 是否有其他選擇?

通過“快速吞噬瀏覽器的內存”,我假設您的意思是您存儲在本地存儲中的文件已用完LocalStorage的配額。 本地存儲配額可以防止網站占用過多的用戶本地磁盤空間。 默認情況下,大多數瀏覽器將每個域的存儲限制為5MB。

從w3規范來看 ,本地存儲配額實際上是一項功能,可以防止您要的事情發生(即,網站在用戶磁盤上存儲的文件數量超過了用戶允許的配額):

用戶代理應該限制存儲區域所允許的空間總量,因為敵對的作者可能會使用此功能來耗盡用戶的可用磁盤空間。

用戶代理應防止站點在其原始站點的其他關聯站點下存儲數據,例如,在a1.example.com,a2.example.com,a3.example.com等網站中存儲上限,以避開主要的example.com存儲限制。

當達到配額時,用戶代理可能會提示用戶,從而允許用戶向站點授予更多空間。 例如,這使站點可以在用戶的​​計算機上存儲許多用戶創建的文檔。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM