私はthis cropperを使って切り取った画像を持っています。切り取った画像のバージョンをbase64
に戻しています。Firebase storage uploading broken image
イメージをblob
またはfile
に変換しようとしています。これをfirebase storage
にアップロードするには、以下のコードを使用してください。
var imageBase64 = $scope.cropper.croppedImage.split(',')[1];
var blob = new Blob([imageBase64], {type: 'image/png'});
var file = new File([imageBase64], 'imageFileName2.png', {type: 'image/png'});
私はfile
を印刷しようとしたとき、それはこのようになりますacutal File
オブジェクトを作成しました。
{
lastModified:1471604365544,
lastModifiedDate:"Fri Aug 19 2016 18:59:25 GMT+0800 (PHT)",
name:"imageFileName2.png",
size:228808,
type:"image/png",
webkitRelativePath:""
}
File
は正常にアップロードされていますが、結果は壊れています。 、私のbase64
イメージが壊れていないことを証明するために
:firebase storage
ダッシュボード上のプレビューがこれだけ(それはロードを停止したことがない、と私はそれをダウンロードしようとしたとき、私は壊れた画像を得た)ように見えますここには私の猫Akashaのbase64
の写真があります。このbase64 viewerでプレビューできます。
var blob([new Uint8Array([success])]、{type: "image/jpeg"})のように、どのようにblob型で行うことができますか? – Ozan
@Oziドキュメントを参照してください:https://firebase.google.com/docs/storage/web/upload-files#upload_from_a_blob_or_file、 'ref.put(imageBlob)'を使用してください。 –