From 361e1c9b1ccc75b54f9983bfacb83625aa3d6149 Mon Sep 17 00:00:00 2001 From: undefined Date: Mon, 9 Jan 2023 17:32:04 +0800 Subject: [PATCH] core: flow: support handler/:action/:name#:method --- packages/hydrooj/src/service/server.ts | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/hydrooj/src/service/server.ts b/packages/hydrooj/src/service/server.ts index 36c2b395d..5514aa335 100644 --- a/packages/hydrooj/src/service/server.ts +++ b/packages/hydrooj/src/service/server.ts @@ -254,16 +254,18 @@ async function handle(ctx: KoaContext, HandlerClass, checker) { const name = HandlerClass.name.replace(/Handler$/, ''); const steps = [ - 'init', 'handler/init', `handler/before-prepare/${name}`, 'handler/before-prepare', - 'log/__prepare', '__prepare', '_prepare', 'prepare', - 'log/__prepareDone', `handler/before/${name}`, 'handler/before', + 'init', 'handler/init', + `handler/before-prepare/${name}#${method}`, `handler/before-prepare/${name}`, 'handler/before-prepare', + 'log/__prepare', '__prepare', '_prepare', 'prepare', 'log/__prepareDone', + `handler/before/${name}#${method}`, `handler/before/${name}`, 'handler/before', 'log/__method', 'all', method, 'log/__methodDone', ...operation ? [ `handler/before-operation/${name}`, 'handler/before-operation', `post${operation}`, 'log/__operationDone', ] : [], 'after', - `handler/after/${name}`, 'handler/after', 'cleanup', - `handler/finish/${name}`, 'handler/finish', + `handler/after/${name}#${method}`, `handler/after/${name}`, 'handler/after', + 'cleanup', + `handler/finish/${name}#${method}`, `handler/finish/${name}`, 'handler/finish', ]; let current = 0;