Я пытаюсь выяснить, как можно загружать изображения с помощью Next JS api route и isomorphi c -unfetch. Все, что я видел, использует express, но я чувствую, что смогу выполнить sh с помощью API-маршрутов.
Пока у меня есть ввод файла типа, который запускает обработчик onClick:
const handleImage = async (theImg) => {
try {
const res = await fetch("/api/admin", {
method: "POST",
body: theImg,
});
const json = await res.json();
console.log(json);
} catch (error) {
console.log(error);
}
};
return(
<input
onChange={(e) => handleImage(e.target.files[0])}
type="file"
name="uploaded_img"
placeholder="Upload File"
/>
);
, но когда я пытаюсь прочитать запрос в маршруте API, тело оказывается поврежденным, и я не могу открыть полученный файл.
маршрут API:
import fs from "fs";
export default async (req, res) => {
try {
const data = fs.writeFile("./uploads/test.jpg", req.body);
//file written successfully
console.log("wrote file");
} catch (err) {
console.error(err);
}
};
полученный файл не может быть открыт и содержит набор пропущенных символов. Я, вероятно, делаю это совершенно неправильно, но любой pu sh в правильном направлении был бы очень признателен!