chrome.storage
speichert Daten als JSON stringification der Werte, die es zu speichern gegeben hat. Wenn Sie also Ihre Datei (en) in ein Formular konvertieren, das in JSON konvertiert werden kann (z. B. durch JSON.stringify()
), kann der Inhalt der Datei gespeichert werden. Wenn der Wert, den Sie in speichern möchten, nicht in JSON konvertiert werden kann, kann er nicht gespeichert werden (z. B. DOM-Elemente). chrome.storage
ist nicht von Natur aus wichtig, was die Daten darstellen, nur dass es JSON-Zeichenfolgen sein kann.
Wenn Sie, wie in Ihrem Kommentar gesagt, wenn es eine gute Idee ist, Tausende von verschiedenen "Dateien" mit insgesamt mehr als 5 GB in chrome.storage
zu speichern, dann lautet die Antwort: "NEIN!".
Wenn Sie nach Alternativen suchen, dann einige zur Verfügung gestellt werden in Can you use HTML5 local storage to store a file? If not, how?
Chrome Lagerung erfolgt nach den gleichen Standards wie die localstorage API daher sollten Sie diese Frage prüfen, die bereits beantwortet wurde https://stackoverflow.com/q/4940586 – davidcondrey
Danke für den Link. LocalStorage hat im Vergleich zum Chrome-Speicher nur wenig Speicherplatz. Es empfiehlt sich, base64-codierte Dateistrings im Chrome-Speicher gegen Schlüssel zu speichern. Die Anzahl der Dateien wäre in Tausend und der Gesamtspeicherplatz könnte 5 GB überschreiten. Der oben erwähnte Link, der von Ihnen erwähnt wird, schlägt vor, Datei-APIs zu verwenden, von denen ich glaube, dass sie der richtige Pfad sind, wenn das, was ich oben vorgeschlagen habe, keine gute Idee ist. – user3191524
Datei-API wäre Reihenfolge (n) der Größenordnung schneller, da es keine Dateien in Zeichenfolgen konvertiert. – wOxxOm