高效管理影像和視訊等媒體資產對於 Web 應用程式至關重要,Cloudinary 提供了一個出色的解決方案來無縫處理這些資產。在這篇文章中,我們將逐步介紹 Cloudinary 在 Node.js 專案中的整合過程。
Cloudinary 是一種基於雲端的媒體管理服務,可讓開發人員以 Web 友善的格式輕鬆儲存、轉換和交付影像和影片。憑藉自動影像優化、響應式轉換和透過 CDN 進行內容交付等功能,Cloudinary 已成為許多開發人員的首選。
探索 Cloudinary 定價
開始之前,請確保您已:
npm install cloudinary
const cloudinary = require('cloudinary').v2; cloudinary.config({ cloud_name: 'YOUR_CLOUD_NAME', api_key: 'YOUR_API_KEY', api_secret: 'YOUR_API_SECRET', }); module.exports = cloudinary;
CLOUD_NAME=your-cloud-name API_KEY=your-api-key API_SECRET=your-api-secret
npm install dotenv
require('dotenv').config(); cloudinary.config({ cloud_name: process.env.CLOUD_NAME, api_key: process.env.API_KEY, api_secret: process.env.API_SECRET, });
const cloudinary = require('./config'); async function uploadImage(imagePath) { try { const result = await cloudinary.uploader.upload(imagePath, { folder: 'samples', // Optional: specify the folder to store images }); console.log('Image uploaded successfully:', result.url); return result.url; } catch (error) { console.error('Error uploading image:', error); } } // Example usage uploadImage('path/to/your/image.jpg');
const transformedImageUrl = cloudinary.url('sample.jpg', { width: 400, height: 300, crop: 'fill', }); console.log('Transformed Image URL:', transformedImageUrl);
npm install multer
const multer = require('multer'); const upload = multer({ dest: 'uploads/' }); // Temporary folder for uploaded files app.post('/upload', upload.single('image'), async (req, res) => { try { const imagePath = req.file.path; const imageUrl = await uploadImage(imagePath); res.json({ imageUrl }); } catch (error) { res.status(500).json({ error: 'Failed to upload image' }); } });
const optimizedImageUrl = cloudinary.url('sample.jpg', { fetch_format: 'auto', quality: 'auto', }); console.log('Optimized Image URL:', optimizedImageUrl);
將 Cloudinary 整合到您的 Node.js 專案中非常簡單,並且打開了媒體管理功能的世界。無論您處理圖像還是視頻,Cloudinary 強大的 API 都可以讓您輕鬆有效地優化、轉換和交付資產。
編碼愉快!
以上是如何在 Node.jsd 中整合 Cloudinary的詳細內容。更多資訊請關注PHP中文網其他相關文章!