Search code examples
node.jsexpresscloudinary

TypeError: cloudinaryStorage is not a function


I'm trying to use Cloudinary in my code but for some reason, I'm getting TypeError.

Here is my code:

const express = require('express')
const bodyParser = require('body-parser')
const multer = require('multer')
const app = express()

const cloudinary = require('cloudinary').v2
const { cloudinaryStorage } = require('multer-storage-cloudinary')

const router = express.Router()

const storage = cloudinaryStorage({
    cloudinary: cloudinary,
    folder: '',
    allowedFormats: ['jpg', 'png']
})

It is the exact same code in npm multer-cloudinary-storage. What am I doing wrong here?


Solution

  • the correct code is the following. it's a big C and you missing the new word.

    const { CloudinaryStorage } = require('multer-storage-cloudinary');
    
    const storage = new CloudinaryStorage({
        cloudinary: cloudinary,
        params: {
            folder: '',
            allowedFormats: ['jpg', 'png']
        }
    
    })
    

    It is the exact same code in npm multer-cloudinary-storage

    No it's not. https://www.npmjs.com/package/multer-storage-cloudinary