// Endpoint para subir una imagen
app.post('/upload', upload.single('image'), async (req, res) => {
const file = req.file;
// Suponiendo que iDrive tiene una API que permite subir archivos
const apiUrl = 'https://api.idrive.com/upload';
const apiKey = 'TU_API_KEY'; // Reemplaza con tu API Key
try {
const formData = new FormData();
formData.append('file', fs.createReadStream(file.path));
const response = await axios.post(apiUrl, formData, {
headers: {
'Content-Type': 'multipart/form-data',
'Authorization': `Bearer ${apiKey}`
}
});
// Elimina el archivo temporal después de subirlo
fs.unlinkSync(file.path);
res.json({ message: 'Imagen subida a iDrive', data: response.data });
} catch (error) {
console.error('Error al subir la imagen:', error);
res.status(500).json({ message: 'Error al subir la imagen', error: error.message });
}
});
// Endpoint para obtener una imagen desde iDrive
app.get('/image/:id', async (req, res) => {
const imageId = req.params.id;
const apiUrl = https://api.idrive.com/files/${imageId}; // Ajusta según la API de iDrive
try {
const response = await axios.get(apiUrl, {
headers: {
'Authorization': `Bearer ${apiKey}`
},
responseType: 'stream'
});
// Enviar la imagen directamente al cliente
response.data.pipe(res);
} catch (error) {
console.error('Error al obtener la imagen:', error);
res.status(500).json({ message: 'Error al obtener la imagen', error: error.message });
}
});
const port = process.env.PORT || 3000;
app.listen(port, () => {
console.log(Servidor escuchando en el puerto ${port});
});
const express = require('express'); const multer = require('multer'); const axios = require('axios'); const fs = require('fs');
const app = express(); const upload = multer({ dest: 'uploads/' });
// Endpoint para subir una imagen app.post('/upload', upload.single('image'), async (req, res) => { const file = req.file;
});
// Endpoint para obtener una imagen desde iDrive app.get('/image/:id', async (req, res) => { const imageId = req.params.id; const apiUrl =
https://api.idrive.com/files/${imageId}
; // Ajusta según la API de iDrive});
const port = process.env.PORT || 3000; app.listen(port, () => { console.log(
Servidor escuchando en el puerto ${port}
); });