diff --git a/packages/hydrooj/package.json b/packages/hydrooj/package.json index 0b2aec2ce..43eca1890 100644 --- a/packages/hydrooj/package.json +++ b/packages/hydrooj/package.json @@ -1,6 +1,6 @@ { "name": "hydrooj", - "version": "2.29.39", + "version": "2.29.40", "bin": "bin/hydrooj.js", "main": "dist/loader.js", "typings": "dist/loader.d.ts", diff --git a/packages/hydrooj/src/handler/problem.ts b/packages/hydrooj/src/handler/problem.ts index c21b57d21..f01222397 100644 --- a/packages/hydrooj/src/handler/problem.ts +++ b/packages/hydrooj/src/handler/problem.ts @@ -322,6 +322,8 @@ export class ProblemEditHandler extends ProblemManageHandler { } export class ProblemFilesHandler extends ProblemDetailHandler { + notUsage = true; + @param('testdata', Types.Boolean) @param('additional_file', Types.Boolean) @param('pjax', Types.Boolean) diff --git a/packages/hydrooj/src/service/server.ts b/packages/hydrooj/src/service/server.ts index ed8d304b7..ce4dcb688 100644 --- a/packages/hydrooj/src/service/server.ts +++ b/packages/hydrooj/src/service/server.ts @@ -408,6 +408,7 @@ export class Handler extends HandlerCommon { csrfToken: string; loginMethods: any; noCheckPermView: boolean; + notUsage: boolean; __param: Record; constructor(ctx: Koa.Context) { @@ -484,7 +485,7 @@ export class Handler extends HandlerCommon { } async init({ domainId }) { - if (!argv.options.benchmark) await this.limitRate('global', 10, 88); + if (!argv.options.benchmark && !this.notUsage) await this.limitRate('global', 10, 88); const [absoluteDomain, inferDomain, bdoc] = await Promise.all([ domain.get(domainId), domain.getByHost(this.request.host),