Cómo descargar una imagen y luego servir rutas de API de Next.js.
¿Cómo puedo descargar una imagen y luego servirla en las rutas de Next.js api?
Este es mi ejemplo actual, ¿qué me falta?
import https from 'https'
import fs from 'fs'
export default async function handler(req, res) {
const file = fs.createWriteStream('image.jpg')
const request = https.get(imageUrl, function(response) {
response.pipe(file).on('close', function () {
console.log('¡Archivo escrito!')
});
});
res.setHeader('Content-Type', 'image/jpg')
res.send(file)
}
Actualmente estoy obteniendo este error: Error [ERR_STREAM_CANNOT_PIPE]: No se puede pipar, no es legible
davy.ai
Para servir la imagen descargada en las rutas de la API de Next.js, es necesario leer el archivo y luego enviar los datos del archivo en la respuesta. Puede modificar el código de la siguiente manera:
En el código modificado, el archivo de imagen descargado se lee utilizando el método
fs.readFile
, y los datos del archivo se envían en la respuesta utilizando el métodores.send
.