React Native 支持 Blob 吗?

Hun*_*oul 5 blob reactjs react-native

我正在开发一个 React Native 项目,我必须将图像上传到我公司指定的云服务(我不能在这里透露),这需要 XMLHttpRequest Level 2、FileReader 和 Blob 支持。

var srcData = new Blob([base64Data], {type: 'image/jpeg'});
Run Code Online (Sandbox Code Playgroud)

我必须srcData在服务调用中使用上述变量作为参数,该参数会将文件上传到云中并为其提供回调及其 url。我使用此 URL 来更新数据库中的用户对象。

但我遇到了关键字问题Blob。经过一段时间的调查后,我发现升级到 React Native 0.54 版本解决了Blob关键字问题。

我无法理解我哪里出错了,React Native 支持 Blob、XMLHttpRequest 或 fileReader 吗?我有什么办法可以解决这个问题吗?

任何线索都将受到高度赞赏。先感谢您。

Pri*_*dya -3

根据文档

var aBlob = new Blob( array[, options]);
Run Code Online (Sandbox Code Playgroud)

其中 array 是ArrayBufferArrayBufferViewBlobDOMString任何此类对象的混合的数组。

Base64不包含上述任何一个,它只是通过将其转换为 radix-64 表示来表示 ASCII 字符串格式的二进制数据

由于您已经有了base64,因此从它生成 的最佳方法blob是,不包含任何外部库

export const generateBlob = base64URL => fetch(base64URL)
    .then(response => response.blob())
    .then(response => console.log('Your blob is' + response)
Run Code Online (Sandbox Code Playgroud)