Сохранить Arraybuffer из записи IndexedDB - PullRequest
0 голосов
/ 06 марта 2012

Можно хранить большие двоичные объекты и массивные буферы в indexedDB (как вы можете видеть здесь ).Моя проблема в том, что я храню PDF-файлы в хранилище и хочу «скачать» их, когда пользователь нажимает на конкретную ссылку.Можно ли "загрузить" файлы из локальной базы данных indexDB?

Ответы [ 3 ]

1 голос
/ 21 марта 2012

Это невозможно при использовании собственного JavaScript или API IndexedDB, но ознакомьтесь с разделами FileWriter и BlobBuilder следующего Файловая система API .

0 голосов
/ 21 мая 2018

Теперь можно сохранять BLOB-объекты в indexedDb

objectStore.put({ id: idValue, blobdata: data })
0 голосов
/ 16 июня 2012

Этот вопрос на самом деле не связан с IndexedDB, а скорее просто «Как заставить пользователя сохранить объект Blob».Blob работает одинаково, независимо от того, загрузили ли вы его из IndexedDB или получили ли вы откуда-то еще.

Использование FileSaver было бы лучшим решением, если бы оно было последовательно реализовано, но это не так..

Что нужно сделать, это сделать что-то вроде этого:

var iframe = document.createElement("iframe");
document.body.appendChild(iframe);
var url = URL.createObjectURL(blob); // This is the magic!
iframe.src = url;
...