diff options
| author | akiyamn | 2023-09-24 23:22:21 +1000 |
|---|---|---|
| committer | akiyamn | 2023-09-24 23:22:21 +1000 |
| commit | 4e87195739f2a5d9a05451b48773c8afdc680765 (patch) | |
| tree | 9cba501844a4a11dcbdffc4050ed8189561c55ed /node_modules/wrangler/templates/middleware/middleware-pretty-error.ts | |
| download | price-tracker-worker-4e87195739f2a5d9a05451b48773c8afdc680765.tar.gz price-tracker-worker-4e87195739f2a5d9a05451b48773c8afdc680765.zip | |
Initial commit (by create-cloudflare CLI)
Diffstat (limited to 'node_modules/wrangler/templates/middleware/middleware-pretty-error.ts')
| -rw-r--r-- | node_modules/wrangler/templates/middleware/middleware-pretty-error.ts | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/node_modules/wrangler/templates/middleware/middleware-pretty-error.ts b/node_modules/wrangler/templates/middleware/middleware-pretty-error.ts new file mode 100644 index 0000000..29dc6d0 --- /dev/null +++ b/node_modules/wrangler/templates/middleware/middleware-pretty-error.ts @@ -0,0 +1,40 @@ +import type { Middleware } from "./common"; + +// A middleware has to be a function of type Middleware +const prettyError: Middleware = async (request, env, _ctx, middlewareCtx) => { + try { + const response = await middlewareCtx.next(request, env); + return response; + } catch (e: any) { + const html = ` + <!DOCTYPE html> + <html lang="en"> + <head> + <meta charset="UTF-8"> + <meta http-equiv="X-UA-Compatible" content="IE=edge"> + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + <title>Error 🚨</title> + <style> + pre { + margin: 16px auto; + max-width: 600px; + background-color: #eeeeee; + border-radius: 4px; + padding: 16px; + } + </style> + </head> + <body> + <pre>${e.stack}</pre> + </body> + </html> + `; + + return new Response(html, { + status: 500, + headers: { "Content-Type": "text/html;charset=utf-8" }, + }); + } +}; + +export default prettyError; |
