diff --git a/packages/start-server-core/src/server-functions-handler.ts b/packages/start-server-core/src/server-functions-handler.ts index e7d961decf1..8c2b708b1f9 100644 --- a/packages/start-server-core/src/server-functions-handler.ts +++ b/packages/start-server-core/src/server-functions-handler.ts @@ -150,7 +150,11 @@ export const handleServerAction = async ({ let jsonPayload if (contentType?.includes('application/json')) { - jsonPayload = await request.json() + const text = await request.text() + if (text.length > MAX_PAYLOAD_SIZE) { + throw new Error('Payload too large') + } + jsonPayload = JSON.parse(text) } const payload = jsonPayload ? parsePayload(jsonPayload) : {}