15 lines
444 B
TypeScript
15 lines
444 B
TypeScript
export default defineEventHandler(async (event) => {
|
|
const req = event.node.req
|
|
const MAX_UPLOAD_BYTES = 100 * 1024 * 1024 // 100MB
|
|
let received = 0
|
|
|
|
for await (const chunk of req) {
|
|
received += chunk.length
|
|
if (received > MAX_UPLOAD_BYTES) {
|
|
event.node.res.destroy()
|
|
throw createError({statusCode: 413, statusMessage: "Fichier trop volumineux"})
|
|
}
|
|
}
|
|
return {received}
|
|
})
|