From 240e9a3702e8123873b97b49aa7fc94e8416ac63 Mon Sep 17 00:00:00 2001 From: bcoll Date: Fri, 2 Feb 2024 16:43:04 +0000 Subject: [PATCH] fix: fallback to returning stack trace if `format-errors` broken --- .../definitions/json.module.template | 25 ++++++++++++------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/packages/playground-preview-worker/src/middleware/definitions/json.module.template b/packages/playground-preview-worker/src/middleware/definitions/json.module.template index d16abbc12a7b..860385be6d6b 100644 --- a/packages/playground-preview-worker/src/middleware/definitions/json.module.template +++ b/packages/playground-preview-worker/src/middleware/definitions/json.module.template @@ -13,15 +13,22 @@ const jsonError = async (request, env, _ctx, middlewareCtx) => { } catch (e) { console.error(e); const error = reduceError(e); - return fetch('https://format-errors.devprod.cloudflare.dev', { - method: 'POST', - body: JSON.stringify({ - error, - url: request.url, - method: request.method, - headers: Object.fromEntries(request.headers.entries()) - }) - }); + try { + const errorRes = await fetch( + 'https://format-errors.devprod.cloudflare.dev', + { + method: 'POST', + body: JSON.stringify({ + error, + url: request.url, + method: request.method, + headers: Object.fromEntries(request.headers.entries()), + }), + } + ); + if (errorRes.ok) return errorRes; + } catch {} + return new Response(error.stack ?? error.message); } };