Octet-stream到PNG

时间:2017-10-24 22:52:19

标签: javascript angularjs

如何将BLOB数据转换为:application / octet-stream; base64为data:image / png; base64?

无论如何都会显示图片,但浏览器不允许我右键单击新标签中的图像。

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

1 个答案:

答案 0 :(得分:1)

不要使用base64,如果它是一个很长的网址会有问题...而是使用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)
})