Next.js API 路由中的正文超过 1mb 限制错误
Body exceeded 1mb limit error in Next.js API route
如果我在 Next.js 上使用 FormData
将图像上传到服务器,我总是会收到此错误。
我尝试了很多,但我没有解决这个问题。
我的代码:
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);
}
}
}
正文解析器的默认大小限制是 API 路由中的 1mb
。您可以通过从 API 路由导出的 custom config
object 修改此值。
// /pages/api/upload.js
export const config = {
api: {
bodyParser: {
sizeLimit: '4mb' // Set desired value here
}
}
}
请注意,API 路由正文大小有限制,详情请参阅 。
如果我在 Next.js 上使用 FormData
将图像上传到服务器,我总是会收到此错误。
我尝试了很多,但我没有解决这个问题。
我的代码:
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);
}
}
}
正文解析器的默认大小限制是 API 路由中的 1mb
。您可以通过从 API 路由导出的 custom config
object 修改此值。
// /pages/api/upload.js
export const config = {
api: {
bodyParser: {
sizeLimit: '4mb' // Set desired value here
}
}
}
请注意,API 路由正文大小有限制,详情请参阅