Skip to content

Commit 8e1df24

Browse files
committed
add throw endpoint
Signed-off-by: flakey5 <73616808+flakey5@users.noreply.github.com>
1 parent 119edbe commit 8e1df24

File tree

4 files changed

+21
-7
lines changed

4 files changed

+21
-7
lines changed

src/middleware/throwMiddleware.ts

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import { Middleware } from './middleware';
2+
3+
/**
4+
* Middleware that exists just to throw an error
5+
*/
6+
export class ThrowMiddleware implements Middleware {
7+
handle(): Promise<Response> {
8+
throw new Error('Throw endpoint hit');
9+
}
10+
}

src/routes/index.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import { OriginMiddleware } from '../middleware/originMiddleware';
77
import { R2Middleware } from '../middleware/r2Middleware';
88
import { RedirectionMiddleware } from '../middleware/redirectionMiddleware';
99
import { SubtitutionMiddleware } from '../middleware/subtituteMiddleware';
10+
import { ThrowMiddleware } from '../middleware/throwMiddleware';
1011
import type { Router } from './router';
1112

1213
export function registerRoutes(router: Router): void {
@@ -63,6 +64,8 @@ export function registerRoutes(router: Router): void {
6364
originMiddleware,
6465
]);
6566

67+
router.post('/_throw', [new ThrowMiddleware()]);
68+
6669
router.get('*', [new NotFoundMiddleware()]);
6770

6871
router.all('*', [new MethodNotAllowedMiddleware()]);

src/routes/router.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,14 @@ export class Router {
5656
return callMiddlewareChain(middlewareChain, req, ctx, unsubstitutedUrl);
5757
});
5858
}
59+
60+
post(endpoint: string, middlewares: Middleware[]): void {
61+
const middlewareChain = buildMiddlewareChain(middlewares);
62+
63+
this.itty.post(endpoint, (req, ctx, unsubstitutedUrl) => {
64+
return callMiddlewareChain(middlewareChain, req, ctx, unsubstitutedUrl);
65+
});
66+
}
5967
}
6068

6169
type MiddlewareChain = (

src/worker.ts

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -45,13 +45,6 @@ export default {
4545
execution: ctx,
4646
};
4747

48-
if (
49-
env.ENVIRONMENT === 'staging' &&
50-
request.url.endsWith('/_657ee98d-f9d3-46cd-837b-f58a88add70a')
51-
) {
52-
throw new Error('sentry source map testing');
53-
}
54-
5548
return await router.handle(request, context);
5649
} catch (e) {
5750
// Send to sentry, if it's disabled this will just noop

0 commit comments

Comments
 (0)