Ошибка при использовании Sharp с библиотекой Multer

Хочу сжимать файлы, перед их сохранением на диск. Решение взял из этой статьи. Но возникает такая ошибка:

введите сюда описание изображения

Код:

const express = require("express");
const multer = require("multer");
const sharp = require("sharp");
const fs = require("fs");

const app = express();
const storage = multer.memoryStorage();
const upload = multer({ storage });

app.use(express.static("./uploads"));

app.post("/", upload.single("picture"), async (req, res) => {
  try {
    fs.access("./uploads", (error) => {
      if (error) {
        fs.mkdirSync("./uploads");
      }
    });
    const { buffer, originalname } = req.file;
    const timestamp = new Date().toISOString();
    const ref = `${timestamp}-${originalname}.webp`;
    await sharp(buffer)
      .webp({ quality: 20 })
      .toFile("./uploads/" + ref);
    const link = `http://localhost:3000/${ref}`;
    return res.json({ link });
  } catch (error) {
    console.log(error);
  }
});

app.listen(3000);


Ответы (0 шт):