2017-10-24 17 views
0

BLOBデータをどのように変換できますか?アプリケーション/オクテットストリーム; base64からデータ:image/png; base64?Octet-stream to PNG

とにかく画像が表示されますが、ブラウザは右クリックして新しいタブで画像を開くことはできません。

$http({ 
    url: image, 
    responseType: 'blob' 
}).then((resp)=>{ 
    var reader = new FileReader(); 
    reader.onload = function(){ 
     $scope.model.view.image = reader.result; 
    }; 
    reader.readAsDataURL(resp.data); 
}); 
+0

'result.replace(使用...問題になる可能性があります 'データ:アプリケーション/オクテットストリーム' を、 'data:image/png') '? –

+0

ハハ、間違いなく –

+0

どうしてですか? https://jsfiddle.net/cb78q272/ –

答えて

1

はbase64では使用しないでください、それは非常に長いURLがあれば、代わりにURL.createObjectURL

window.URL = window.URL || window.webkitURL 

$http({ 
    url: image, 
    responseType: 'blob' 
}).then(blob => { 
    // change the type 
    blob = new Blob([blob], {type: 'image/png'}) 
    $scope.model.view.image = URL.createObjectURL(blob) 
}) 
+0

うん、それはうまくいっていて高速です。しかし、「新しいタブで画像を開く」オプションはまだ機能しません。新しいタブにURLを貼り付けてEnterキーを押したときだけです。私はそれを解決する方法を見つけようとします。ありがとうございました :) –

関連する問題