Last updated: Sep-12-2024
On this page:
Overview
Learn how to upload assets in Node.js using the Cloudinary Node.js SDK.
Video tutorial
View the code
You can find the code from this tutorial in GitHub.Tutorial contents
This tutorial presents the following topics. Click a timestamp to jump to that part of the video.
Upload one image using the Node.js SDK
0:12 | Once you have installed and configured the Cloudinary Node.js SDK, you can upload an image using the upload method of the Upload API. For example, to upload an image located at /images/image-1 in your file system: |
Run the code and get a response
0:21 | Run the code using npm run . The result will contain a secure URL. Copy and paste the URL into your browser to view the uploaded image. |
Upload multiple images
0:36 | To upload multiple images, you could create an array containing the file paths of the images you want to upload. Then, iterate through the array and apply the upload method to each image. |
Run the code and get a response
0:58 | Run this code using npm run . You'll receive a response for each image, including its secure URL. |
Install p-limit
1:11 | If you're uploading a large number of images, consider using a different upload method like p-limit. This enables you to concurrently utilize promises while controlling the maximum number of simultaneous executions. Install p-limit using npm install p-limit . |
Set the concurrent promise limit
1:40 | Start by importing p-limit and specify the maximum number of promises that can execute concurrently. In this example, the limit is set to 10 concurrent promises, which fits the limitation for the free plan. For example, if you're uploading 100 images, 10 uploads will process concurrently until all images are uploaded. |
Batch upload using p-limit
1:58 | Create a function called imagesToUpload , which maps over each image in the images array. Within this function, utilize p-limit to enforce the concurrent promise limit set earlier. Inside the limited function, use the upload method to upload each image. Specify the current image using image from the mapping and return the upload result. Execute the function using let uploads = await Promise.all(imagesToUpload); and log the results to the console. |
Run the batch upload
2:44 | Run the code to initiate the uploads, and get an array containing the outcomes of all the promises. |
Keep learning
Related topics
- Learn more about uploading images and videos using the Node.js SDK.
- Take a look at our Upload guide to learn about uploading to Cloudinary in general.
- Use the Upload API reference to find all the options and parameters available for the SDK.
- Watch more Dev Hints videos on the Cloudinary YouTube channel.
If you like this, you might also like...
Configure the Node.js SDK
Install and configure the Cloudinary Node.js SDKUpload Videos in Node.js
Upload videos to Cloudinary using the Node.js SDKUpload Widget
Embed an Upload Widget in your site
Check out the Cloudinary Academy for free self-paced Cloudinary courses on a variety of developer or DAM topics, or register for formal instructor-led courses, either virtual or on-site.
✖️