IndexedDBに画像ファイルを保存する
大量かつ大容量の画像ファイルを扱うWebアプリを現在開発しておりまして、ロード時間縮減のために画像ファイルをローカルに保存する仕組みを作ろうと思ったのです。キャッシュではなく persistent な形で。
で、HTML5のFile System APIを使ってこの処理を実装しようと目論んだのですが、実装状況を確認したところまさかのFireFoxが未対応。
Can I use Filesystem & FileWriter API
モダンブラウザの代表格たるFireFoxがFile System APIを実装していないのは合点が行きません。といってもChromeしか対応していないAPIを使うわけにもいかず代替案を探していたところ、Mozilla Hacks で IndexedDB を画像ファイルのストレージとして利用する方法が紹介されていました:
Storing images and files in IndexedDB ✩ Mozilla Hacks – the Web developer blog
IndexedDBを利用したことがないのでI/Oのパフォーマンスがどの程度のものなのか気掛かりですが、とりあえずこの方法で実装してみようと思います。