Tengo un problema con el middleware multer. Creé el middleware y configuré los archivos static express en la carpeta de imágenes
app.use('/images', express.static(path.join(__dirname, 'images')));El middleware multer
const multer = require('multer'); const MIME_TYPES = { 'image/jpg': 'jpg', 'image/jpeg': 'jpg', 'image/png': 'png' }; const storage = multer.diskStorage({ destination: (req, file, callback) => { callback(null, 'images'); }, filename: (req, file, callback) => { const name = file.originalname.split(' ').join('_'); const extension = MIME_TYPES[file.mimetype]; callback(null, name + Date.now() + '.' + extension); } }); module.exports = multer({storage: storage}).single('image');Después de esto, adjunté el middleware al enrutador:
router.post('/add-avatar', multer, addAvatar);El siguiente paso es el problema. El middleware no ejecuta la función en absoluto. estoy intentando de todo...
exports.add = async (req, res, next) => { try { let url = req.protocol + '://' + req.get('host'); let imageLink = req.file ? url + '/images/' + req.file.filename : ''; res.send(imageLink); } catch (error) { console.log(error); } } Traté de eliminar el middleware multer y las solicitudes se pensaron. También traté de cargar el archivo con el cartero. Pero la solicitud queda en pendiente.. 
no se que estoy haciendo mal...
Pruebe el siguiente código en su lugar:
const multer = require("multer"); const upload = multer({ dest: "images/", limits: { fieldSize: 25 * 1024 * 1024 }, }); router.post("/add-avatar", upload.single("image"), async (req, res) => { let url = req.protocol + '://' + req.get('host'); let imageLink = req.file ? url + '/images/' + req.file.filename : ''; res.send(imageLink); }); module.exports = router;