使用react native将图像上传到heroku

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用react native将图像上传到heroku相关的知识,希望对你有一定的参考价值。

我正在尝试将图像从本机反应上传到public / images /文件夹中的heroku express应用程序。它向我显示成功消息,但images文件夹中没有图像。同时当我在localhost上尝试这个代码时,工作正常..

router.post('/add', (req, res) => {
    let imageFile = req.files.photo;
    let fileName = Date.now();
    let imgName = fileName+req.files.photo.name;
    let dirName = __dirname.replace('routes','public')
    dirName = dirName+'/images/';
    let path = dirName+imgName;
    imageFile.mv(path, (err)=> {
        if (err) {
            return res.status(501).json({
                message: 'error'
            });
        } else {
            return res.status(200).json({
                message: 'success'
            })
        }
    });
})
答案

Heroku文件系统是ephemeral,你不能在运行时使用它来持久存储任何东西。相反,您可以使用Heroku Elements marketplace中的附加组件来实现您的存储需求。对于您的特定用例,Cloudinary听起来可能是一个很好的匹配。他们的免费计划为您提供10 GB的存储空间。您可以从node.js代码轻松地将图像上传到cloudinary,如here所述。

以上是关于使用react native将图像上传到heroku的主要内容,如果未能解决你的问题,请参考以下文章

将图像路径转换为 ​​blob react native

在 react-native 中将图像上传到亚马逊 s3

如何将 React Native 应用程序上的本地图像文件上传到 Rails api?

将图像从 Firebase 存储链接到 Firestore 文档并在 React Native 中显示它们

在 React Native 中将图像上传到 Firebase 存储时出现错误 400 Bad Request

如何在 fetch 中传递 POST 参数以在 React Native 中将图像上传到服务器?