Node.js 使用NextJS api路由和同构取消蚀刻将图像上载到文件夹
我试图弄清楚如何使用NextJSAPI路由和同构取消蚀刻上传图像。我所看到的一切都是利用express,但我觉得我应该能够通过api路由来完成它 到目前为止,我有一个file类型的输入,它触发一个onClick处理程序:Node.js 使用NextJS api路由和同构取消蚀刻将图像上载到文件夹,node.js,api,routes,next.js,Node.js,Api,Routes,Next.js,我试图弄清楚如何使用NextJSAPI路由和同构取消蚀刻上传图像。我所看到的一切都是利用express,但我觉得我应该能够通过api路由来完成它 到目前为止,我有一个file类型的输入,它触发一个onClick处理程序: const handleImage = async (theImg) => { try { const res = await fetch("/api/admin", { method: "P
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服务器。如果您使用node.js作为API服务器,则需要检查multer的文件处理情况,然后在强大的serverless中签出该示例。这就是您在nextJS上所需要的,因为它是无服务器的。您需要将使用多部分/表单数据的映像传递到API服务器。如果您将node.js用作API服务器,则需要检查multer的文件处理功能,然后在无服务器中签出示例。这就是您在nextJS上需要的,因为它是无服务器的。
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);
}
};