mirror of
https://github.com/LukeHagar/vercel.git
synced 2025-12-09 12:57:46 +00:00
[cli] Fix middleware 500 in vc dev (#8833)
The status code no longer prints the generic error page.
This commit is contained in:
@@ -1448,7 +1448,9 @@ export default class DevServer {
|
|||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
if (middlewareRes.status === 500) {
|
const middlewareBody = await middlewareRes.buffer();
|
||||||
|
|
||||||
|
if (middlewareRes.status === 500 && middlewareBody.byteLength === 0) {
|
||||||
await this.sendError(
|
await this.sendError(
|
||||||
req,
|
req,
|
||||||
res,
|
res,
|
||||||
@@ -1493,7 +1495,6 @@ export default class DevServer {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!shouldContinue) {
|
if (!shouldContinue) {
|
||||||
const middlewareBody = await middlewareRes.buffer();
|
|
||||||
this.setResponseHeaders(res, requestId);
|
this.setResponseHeaders(res, requestId);
|
||||||
if (middlewareBody.length > 0) {
|
if (middlewareBody.length > 0) {
|
||||||
res.setHeader('content-length', middlewareBody.length);
|
res.setHeader('content-length', middlewareBody.length);
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
export default () => new Response(null, { status: 500 });
|
export default () => new Response('Example Error', { status: 500 });
|
||||||
|
|||||||
@@ -551,7 +551,7 @@ test(
|
|||||||
test(
|
test(
|
||||||
'[vercel dev] Middleware with an explicit 500 response',
|
'[vercel dev] Middleware with an explicit 500 response',
|
||||||
testFixtureStdio('middleware-500-response', async (testPath: any) => {
|
testFixtureStdio('middleware-500-response', async (testPath: any) => {
|
||||||
await testPath(500, '/', /EDGE_FUNCTION_INVOCATION_FAILED/);
|
await testPath(500, '/', 'Example Error');
|
||||||
})
|
})
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user