相关疑难解决方法(0)

DOM异常5 javascript中有效base64图像字符串上的INVALID CHARACTER错误

我正在尝试将图像的base64字符串解码为二进制文件,以便可以通过操作系统在本地下载和显示.

我作为带有数据URI前言的HTML IMG元素的src(数据:img/png; base64,)成功呈现的字符串,但是当使用atob函数或goog闭包函数时,它失败了.

但是,当放入此处时解码成功:http://www.base64decode.org/

有任何想法吗?

编辑:我成功地使用除内置JS函数之外的其他库进行解码.但是,它仍然无法在本地打开 - 在Mac上说它已经损坏或者格式不明,无法打开.

代码就是这样的:

imgEl.src = 'data:img/png;base64,' + contentStr; //this displays successfully
decodedStr = window.atob(contentStr); //this throws the invalid char exception but i just
//used a different script to get it decode successfully but still won't display locally
Run Code Online (Sandbox Code Playgroud)

base64字符串本身太长而无法显示(限制为30,000个字符)

javascript base64 decode image

21
推荐指数
1
解决办法
2万
查看次数

Firebase 存储:字符串与 base64 格式不匹配:找到无效字符。仅当调试关闭时

我正在尝试将图像文件上传到 firebase 存储,保存下载 URL,并在上传完成后加载它。当我使用 debug js 远程运行应用程序时,它工作正常。当我关闭调试模式时,它会停止处理无效格式异常。当我在真实设备(iOS 和 Android)中运行时也会发生同样的情况

来自React Native Image Picker的base64响应数据似乎是正确的

这是我的代码

...
import * as ImagePicker from 'react-native-image-picker'; //0.26.10
import firebase from 'firebase'; //4.9.1
...

handleImagePicker = () => {
    const { me } = this.props;
    const options = {
      title: 'Select pic',
      storageOptions: {
        skipBackup: true,
        path: 'images'
      },
      mediaType: 'photo',
      quality: 0.5,
    };
    ImagePicker.showImagePicker(options, async (response) => {
        const storageRef = firebase.storage().ref(`/profile-images/user_${me.id}.jpg`);

        const metadata = {
          contentType: 'image/jpeg',
        };

        const task = storageRef.putString(response.data, 'base64', metadata); …
Run Code Online (Sandbox Code Playgroud)

javascript firebase react-native firebase-storage react-native-image-picker

4
推荐指数
1
解决办法
3314
查看次数