gpt4 book ai didi

javascript - React Native 将 base64 图像保存到相册

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:45:38 30 4
gpt4 key购买 nike

第三方API返回base64编码的“二维码图片”,
我需要将该图像保存到用户的相册。

React-Native-Fetch-Blob 的维护者失踪了,所以没有人回答 Github Issue,createFile 来自 React-Native-Fetch-Blob Document没有按预期工作(没有将图像保存到相册中)

  import fetch_blob from 'react-native-fetch-blob';

// json.qr variable are return from API

const fs = fetch_blob.fs
const base64 = fetch_blob.base64
const dirs = fetch_blob.fs.dirs

const file_path = dirs.DCIMDir + "/some.jpg"
const base64_img = base64.encode(json.qr)

fs.createFile(file_path, base64_img, 'base64')
.then((rep) => {
alert(JSON.stringify(rep));
})
.catch((error) => {
alert(JSON.stringify(error));
});

有人处理过这个问题吗?

如何将base64编码的图片字符串保存到用户相册? (作为 jpg 或 png 文件)

因为我获取一个没有CORS头的API,
我无法在 Debug JS Remotely
中调试它Chrome 会阻止该请求的发生,

我必须在我的 Android 手机上运行它才能使其正常工作
(真机上没有CORS控制)

我打算使用剪贴板保存 base64 字符串,
并将其硬编码到我的代码中,
调试 react-native-fetch-blob createFile API

有什么问题

最佳答案

删除 base64 字符串中的 data:image/png;base64,

var Base64Code = base64Image.split("data:image/png;base64,"); //base64Image is my image base64 string

const dirs = RNFetchBlob.fs.dirs;

var path = dirs.DCIMDir + "/image.png";

RNFetchBlob.fs.writeFile(path, Base64Code[1], 'base64')
.then((res) => {console.log("File : ", res)});

然后我解决了我的问题。

关于javascript - React Native 将 base64 图像保存到相册,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48134397/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com