2013-01-15 51 views
0

火狐只允許通過extensionsIndexedDB是否複製本地文件以存儲離線應用程序?

也有人指出,如果你存儲在IndexedDB的文件,他們正在外部存儲,數據庫外部訪問完整的文件路徑(見this

如果我插入一個將一堆文件放入IndexedDB中,關閉它,返回tmw並打開數據庫,它如何知道我昨天插入的文件位於何處?

IndexedDB是否可以訪問完整的文件路徑?如果是這樣,我可以通過InexedDb訪問完整的文件路徑嗎?

或者IndexedDB是否複製副本?

(這是脫機使用)

編輯
我可以存儲一堆文件在IndexedDB的自己單獨的鑰匙和遍歷他們重新填充的應用程序。

IndexedDB非常聰明,不會存儲相同的文件副本。它是如何做到的?

最重要的是,如果應用程序是離線使用的圖像查看器,然後將這些圖像導入到要管理的IndexedDB將複製文件(?)現在我有兩組度假照片。它是否正確?

+0

爲什麼需要完整的文件路徑,如果可以通過密鑰獲取文件? –

+0

這些文件可以擁有自己的密鑰,但是這需要複製許多照片才能存放在IndexedDB旁邊。如果有權訪問完整文件路徑,則不需要重複。我只是存儲文件路徑,並在加載查看器時加載圖像。 – user1460015

+0

另外,請回想一下,IndexedDB足夠智能,可以檢測您是否嘗試存儲相同的文件(內部引用計數器)。它是如何做到的? – user1460015

回答

0

我的猜測是這些文件將被存儲在indexeddb數據庫所在的相同位置。有關詳細信息,請參閱my post我之前寫過有關indexeddb的位置

+0

但想象一下,如果我有超過100張您想存儲在IndexedDB上的照片。他們都會得到重複,並放在旁邊的數據庫?這有點極端,不是嗎? – user1460015

+0

如果您閱讀了您提供的文章,他們說將文件保存在indexeddb之外,但Mozilla足夠聰明,只需保存一次該文件的副本(如果該文件被多次引用)。 AppData文件夾是Mozilla存儲數據的唯一位置。 –

+0

感謝您的回覆和文章。我確實讀過它。但我仍然認爲這有點極端。如果我構建一個圖像查看器來脫機使用,以查看我龐大的圖像集合,並且我想使用IndexedDB來存儲圖像(以及我可能添加的其他元標籤,例如標籤等),但我認爲我認爲我可以存儲數據庫中的文件路徑,而不是將文件的一個副本複製到文件夾中的數據庫之外。所以現在我在'vacation'文件夾中有一個副本,而另一個副本在indexedDB之外。 – user1460015

相關問題