如果我使用 FormData
在 Next.js 上将图像上传到服务器时,我总是收到此错误。
我尝试了很多,但我没有解决这个问题。
我的代码:
const changeValue = (e) => {
if (e.target.name === "avatar") {
const file = e.target.files[0];
const formData = new FormData();
formData.append("image", file, file.name);
try {
const config = {
Headers: {
"Content-Type": "multipart/form-data",
},
};
axios
.post("/api/upload", formData, config)
.then((res) => {
setAvatar(res.data);
setAvatarPreview(res.data);
})
.catch((err) => {
console.log(err.message);
});
} catch (err) {
console.log(err);
}
}
}
最佳答案
正文解析器的默认大小限制为 1mb
在 API 路由中。您可以通过 custom config
object 修改此值从 API 路由导出。
// /pages/api/upload.js
export const config = {
api: {
bodyParser: {
sizeLimit: '4mb' // Set desired value here
}
}
}
请注意,API 路由正文大小有限制,请参阅 How to override the 4mb API Routes body size limit?详情。
关于javascript - Next.js API 路由中的正文超出 1mb 限制错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68574254/