尝试将图像上传到 Cloudinary 时收到 TypeError

维吉尔甘蔗

我一直在尝试将图像直接从我的表单上传到 cloudinary。每当我尝试上传图像时,都会收到以下错误消息:

/mnt/c/NodeApps/uploadFile/node_modules/multer-storage-cloudinary/lib/index.js:67
    var stream = _this.cloudinary.v2.uploader.upload_stream(params, cb);
                                         ^
    TypeError: Cannot read property 'uploader' of undefined
    at /mnt/c/NodeApps/uploadFile/node_modules/multer-storage-cloudinary/lib/index.js:67:42
    at end (/mnt/c/NodeApps/uploadFile/node_modules/run-parallel/index.js:18:15)
    at process._tickCallback (internal/process/next_tick.js:61:11)

我的表格:

<form action='upload' method="POST" enctype="multipart/form-data">
    <input type='text' name='caption' placeholder="Name the image">
    <input type="file" name="new_image">
    <button type='submit'>Submit</button>
</form>

来自 app.js

var multer                  = require('multer');
var cloudinary              = require('cloudinary').v2;
var cloudinaryStorage       = require('multer-storage-cloudinary');
var bodyParser              = require('body-parser');

var app = express();

app.use(express.static('public'));
app.use(bodyParser.urlencoded({extended:true}));

Cloudinary 配置:

cloudinary.config({
    cloud_name: process.env.cloud_name,
    api_key: process.env.API_KEY,
    api_secret: process.env.API_SECRET
});

var storage = cloudinaryStorage({
    cloudinary: cloudinary,
    folder: "demo",
    allowedFormats: ['jpg', 'png'],
});
var parser = multer({ storage: storage });

我的邮政路线:

app.post('/upload', parser.single('new_image'), (req, res) => {
    cloudinary.v2.uploader.upload(req.file.path, (err, result) => {
        if (err) { console.log('Error: ' + err); }
        image.url = result.secure_url;
        console.log(image.url);
    });
});

我完全难以解决这个错误,任何关于我哪里出错的建议都将不胜感激。

约书亚T

我认为您忽略了一个小错误 - 当您在这里需要它时,您已经遍历了 SDK 的 v2 对象:

var cloudinary = require('cloudinary').v2;

所以,在这段代码中:

cloudinary.v2.uploader.upload(req.file.path, (err, result) => {
    ...
}

您实际上是在调用cloudinary.v2.v2.uploader而不是cloudinary.v2.uploader. 因此,它无法在未定义上调用上传器方法的错误,因为cloudinary.v2.v2未定义。.v2在您的 require 行或从您调用 uploader 的地方删除


一个单独的问题是,根据您的代码,您似乎要双重上传图像。由于您已将 multer 配置为使用 Cloudinary 作为存储目的地,将其作为中间件应该意味着它自己上传到 Cloudinary,因此当您调用 时.uploader.upload(),这实际上是第二次上传。我相信这将是更正确的代码:

app.post('/upload', parser.single('new_image'), (req, res) => {
    // Since multer is the middleware & set to single, req.file should be an object with the results from cloudinary
    let image = {};
    image.url = req.file.secure_url;
    console.log(image.url);
});

我发现有帮助的一些参考资料:

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

尝试上传到Cloudinary时收到令人困惑的错误

来自分类Dev

尝试上传到Cloudinary时收到令人困惑的错误

来自分类Dev

尝试将图像上传到Firebase时出现错误(Swift)

来自分类Dev

使用 Java API 将图像上传到 Cloudinary

来自分类Dev

使用Carrierwave上传到Cloudinary时添加“备份”选项

来自分类Dev

将图片URI上传到Cloudinary

来自分类Dev

使用Jquery将图片上传到cloudinary?

来自分类Dev

当我尝试访问嵌套的哈希数组时收到 (TypeError)

来自分类Dev

CreateView - 尝试保存图像上传时出现 TypeError

来自分类Dev

尝试使用Node js将多个图像上传到AWS时遇到错误

来自分类Dev

通过Node将base64图像从react-webcam上传到cloudinary

来自分类Dev

如何将图像缓冲区转换为照片以上传到Cloudinary?

来自分类Dev

将图像上传到 Cloudinary Express.js React Axios post 请求

来自分类Dev

通过API将Cakephp 3图片上传到Cloudinary

来自分类Dev

使用Ruby on Rails将.zip文件上传到Cloudinary

来自分类Dev

从电子内部的angularJS SPA将电影上传到cloudinary

来自分类Dev

我正在尝试使用Cloudinary post API上传图像而不使用Cloudinary SDK

来自分类Dev

通过 cloudinary 小部件 UI 在上传图像时获取元数据

来自分类Dev

尝试使用Google Apps脚本将图像上传到Graph API时,如何解决“异常:超出限制”错误?

来自分类Dev

尝试将图像和用户数据上传到mongoDB时出现错误“发送后无法设置标题”

来自分类Dev

错误UPLOAD_ERR_INI_SIZE值:1;尝试使用php将图像上传到FTP时

来自分类Dev

将图像上传到Cloudinary并同时生成低分辨率版本作为不同的URL

来自分类Dev

从Django上传Cloudinary图片

来自分类Dev

Cloudinary文件上传错误

来自分类Dev

尝试将文件上传到Azure文件共享时出错

来自分类Dev

尝试将应用上传到应用商店时出错,

来自分类Dev

尝试将工件上传到Nexus 2.9时出错

来自分类Dev

注册时将图像上传到用户时出错?

来自分类Dev

从cloudinary网址下载图像

Related 相关文章

  1. 1

    尝试上传到Cloudinary时收到令人困惑的错误

  2. 2

    尝试上传到Cloudinary时收到令人困惑的错误

  3. 3

    尝试将图像上传到Firebase时出现错误(Swift)

  4. 4

    使用 Java API 将图像上传到 Cloudinary

  5. 5

    使用Carrierwave上传到Cloudinary时添加“备份”选项

  6. 6

    将图片URI上传到Cloudinary

  7. 7

    使用Jquery将图片上传到cloudinary?

  8. 8

    当我尝试访问嵌套的哈希数组时收到 (TypeError)

  9. 9

    CreateView - 尝试保存图像上传时出现 TypeError

  10. 10

    尝试使用Node js将多个图像上传到AWS时遇到错误

  11. 11

    通过Node将base64图像从react-webcam上传到cloudinary

  12. 12

    如何将图像缓冲区转换为照片以上传到Cloudinary?

  13. 13

    将图像上传到 Cloudinary Express.js React Axios post 请求

  14. 14

    通过API将Cakephp 3图片上传到Cloudinary

  15. 15

    使用Ruby on Rails将.zip文件上传到Cloudinary

  16. 16

    从电子内部的angularJS SPA将电影上传到cloudinary

  17. 17

    我正在尝试使用Cloudinary post API上传图像而不使用Cloudinary SDK

  18. 18

    通过 cloudinary 小部件 UI 在上传图像时获取元数据

  19. 19

    尝试使用Google Apps脚本将图像上传到Graph API时,如何解决“异常:超出限制”错误?

  20. 20

    尝试将图像和用户数据上传到mongoDB时出现错误“发送后无法设置标题”

  21. 21

    错误UPLOAD_ERR_INI_SIZE值:1;尝试使用php将图像上传到FTP时

  22. 22

    将图像上传到Cloudinary并同时生成低分辨率版本作为不同的URL

  23. 23

    从Django上传Cloudinary图片

  24. 24

    Cloudinary文件上传错误

  25. 25

    尝试将文件上传到Azure文件共享时出错

  26. 26

    尝试将应用上传到应用商店时出错,

  27. 27

    尝试将工件上传到Nexus 2.9时出错

  28. 28

    注册时将图像上传到用户时出错?

  29. 29

    从cloudinary网址下载图像

热门标签

归档