blob
AJAX 経由で取得したデータ (favicon)を に保存しようとしていlocalStorage
ます。
コード :
var xhr = new XMLHttpRequest();
xhr.open('GET',
'http://g.etfv.co/http://www.google.com',
true);
xhr.responseType = "blob";
xhr.onload = function(e){ //Stringify blob...
localStorage['icon'] = JSON.stringify(xhr.response);
//reload the icon from storage
var fr = new FileReader();
fr.onload =
function(e) {
document.getElementById("myicon").src = fr.result;
}
fr.readAsDataURL(JSON.parse(localStorage['icon']));
}
xhr.send(null);
このコードは、で動作するように若干の変更を加えて、ここlocalStorage
から適用されます。localStorage はすべてのデータを文字列として保存するため、BLOBは保存する前に何らかの方法で文字列化する必要があります。
JSON
サポートされている型の 1 つとして blob を処理しないため、このコードが失敗しても驚くことではありません。
blob を localStorage に入れる方法はありますか?