2

我正在尝试使用 React-Native-Fetch-Blob 将图像存储在 Firebase.Storage 中,我终于得到了一些存储,但存储中的文件现在是完全无意义/压缩的数据,我不能真正用于任何事情。

如何将 blob 转回 BASE64 或图像,以便我可以在我的应用程序中使用该图像

`

upLoadImage(image, mime = 'application/octet-stream') {
    const imageRef = firebase.storage().ref('images').child('image_001')
    let uploadBlob = null
    console.log('phase 2');
    Blob.build(image, {
        type: `${mime};BASE64`
    }).then((blob) => {
        console.log(imageRef.toString());
        uploadBlob = blob
        imageRef.put(blob, {
            contentType: mime
        })
        console.log('phase 2');
        console.log(imageRef.toString());
        console.log(imageRef.getDownloadURL());
        imageRef.getDownloadURL()
    }).catch((error) => {
        console.log(error.toString());
    })
}

`

该代码基于此项目https://github.com/dailydrip/r​​eact-native-firebase-storage/blob/master/src/App.js#L43-L69

4

1 回答 1

0

下面的代码将 URL 转换为 base64 图像

   RNFetchBlob.fetch("GET", "ImageURL").then(resp => {
   base64image.push("data:image/png;base64," + resp.data);              
        console.log(base64image);   // -> your base64 image       
   });
于 2020-03-13T11:47:36.767 回答