From 5f0dafa010a5c602b667e6a04e9845474067e3b3 Mon Sep 17 00:00:00 2001 From: whyour Date: Tue, 23 Dec 2025 00:28:16 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=20cron-parser=20import?= =?UTF-8?q?=EF=BC=8Cwebsocket=20basepath?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- back/api/dependence.ts | 2 +- back/api/script.ts | 6 +++--- back/api/subscription.ts | 2 +- back/loaders/sock.ts | 3 ++- back/services/cron.ts | 2 +- back/validation/schedule.ts | 2 +- src/pages/crontab/modal.tsx | 4 ++-- src/pages/subscription/modal.tsx | 4 ++-- src/utils/index.ts | 4 ++-- 9 files changed, 15 insertions(+), 14 deletions(-) diff --git a/back/api/dependence.ts b/back/api/dependence.ts index 2d9dc465..1c700f3b 100644 --- a/back/api/dependence.ts +++ b/back/api/dependence.ts @@ -16,7 +16,7 @@ export default (app: Router) => { searchValue: Joi.string().optional().allow(''), type: Joi.string().optional().allow(''), status: Joi.string().optional().allow(''), - }), + }).unknown(true), }), async (req: Request, res: Response, next: NextFunction) => { const logger: Logger = Container.get('logger'); diff --git a/back/api/script.ts b/back/api/script.ts index 3500e037..1ecce902 100644 --- a/back/api/script.ts +++ b/back/api/script.ts @@ -29,7 +29,7 @@ export default (app: Router) => { celebrate({ query: Joi.object({ path: Joi.string().optional().allow(''), - }), + }).unknown(true), }), async (req: Request, res: Response, next: NextFunction) => { const logger: Logger = Container.get('logger'); @@ -79,7 +79,7 @@ export default (app: Router) => { query: Joi.object({ path: Joi.string().optional().allow(''), file: Joi.string().required(), - }), + }).unknown(true), }), async (req: Request, res: Response, next: NextFunction) => { try { @@ -103,7 +103,7 @@ export default (app: Router) => { }), query: Joi.object({ path: Joi.string().optional().allow(''), - }), + }).unknown(true), }), async (req: Request, res: Response, next: NextFunction) => { try { diff --git a/back/api/subscription.ts b/back/api/subscription.ts index c4af1565..dd365a27 100644 --- a/back/api/subscription.ts +++ b/back/api/subscription.ts @@ -3,7 +3,7 @@ import { Container } from 'typedi'; import { Logger } from 'winston'; import SubscriptionService from '../services/subscription'; import { celebrate, Joi } from 'celebrate'; -import { CronExpressionParser } from 'cron-parser'; +import CronExpressionParser from 'cron-parser'; const route = Router(); export default (app: Router) => { diff --git a/back/loaders/sock.ts b/back/loaders/sock.ts index 2d1eb8a7..5ab0b497 100644 --- a/back/loaders/sock.ts +++ b/back/loaders/sock.ts @@ -5,9 +5,10 @@ import SockService from '../services/sock'; import { getPlatform } from '../config/util'; import { shareStore } from '../shared/store'; import { isValidToken } from '../shared/auth'; +import config from '../config'; export default async ({ server }: { server: Server }) => { - const echo = sockJs.createServer({ prefix: '/api/ws', log: () => {} }); + const echo = sockJs.createServer({ prefix: `${config.baseUrl}/api/ws`, log: () => { } }); const sockService = Container.get(SockService); echo.on('connection', async (conn) => { diff --git a/back/services/cron.ts b/back/services/cron.ts index bdfe6c51..95426dd8 100644 --- a/back/services/cron.ts +++ b/back/services/cron.ts @@ -4,7 +4,7 @@ import config from '../config'; import { Crontab, CrontabModel, CrontabStatus } from '../data/cron'; import { exec, execSync } from 'child_process'; import fs from 'fs/promises'; -import { CronExpressionParser } from 'cron-parser'; +import CronExpressionParser from 'cron-parser'; import { getFileContentByName, fileExist, diff --git a/back/validation/schedule.ts b/back/validation/schedule.ts index ed212ab4..cc605152 100644 --- a/back/validation/schedule.ts +++ b/back/validation/schedule.ts @@ -1,5 +1,5 @@ import { Joi } from 'celebrate'; -import { CronExpressionParser } from 'cron-parser'; +import CronExpressionParser from 'cron-parser'; import { ScheduleType } from '../interface/schedule'; import path from 'path'; import config from '../config'; diff --git a/src/pages/crontab/modal.tsx b/src/pages/crontab/modal.tsx index 523e9797..f4848ff8 100644 --- a/src/pages/crontab/modal.tsx +++ b/src/pages/crontab/modal.tsx @@ -3,7 +3,7 @@ import config from '@/utils/config'; import { request } from '@/utils/http'; import { MinusCircleOutlined, PlusOutlined } from '@ant-design/icons'; import { Button, Form, Input, Modal, Select, Space, message } from 'antd'; -import cronParser from 'cron-parser'; +import CronExpressionParser from 'cron-parser'; import { useEffect, useState } from 'react'; import intl from 'react-intl-universal'; import { getScheduleType, scheduleTypeMap } from './const'; @@ -92,7 +92,7 @@ const CronModal = ({ { validator: (_, value) => { try { - if (!value || cronParser.CronExpressionParser.parse(value).hasNext()) { + if (!value || CronExpressionParser.parse(value).hasNext()) { return Promise.resolve(); } return Promise.reject(intl.get('Cron表达式格式有误')); diff --git a/src/pages/subscription/modal.tsx b/src/pages/subscription/modal.tsx index 7d254cd6..d5b6afb4 100644 --- a/src/pages/subscription/modal.tsx +++ b/src/pages/subscription/modal.tsx @@ -12,7 +12,7 @@ import { } from 'antd'; import { request } from '@/utils/http'; import config from '@/utils/config'; -import cronParser from 'cron-parser'; +import CronExpressionParser from 'cron-parser'; import isNil from 'lodash/isNil'; const { Option } = Select; @@ -382,7 +382,7 @@ const SubscriptionModal = ({ if ( scheduleType === 'interval' || !value || - cronParser.CronExpressionParser.parse(value).hasNext() + CronExpressionParser.parse(value).hasNext() ) { return Promise.resolve(); } else { diff --git a/src/utils/index.ts b/src/utils/index.ts index 4b899a17..9260a100 100644 --- a/src/utils/index.ts +++ b/src/utils/index.ts @@ -1,6 +1,6 @@ import intl from 'react-intl-universal'; import { LANG_MAP, LOG_END_SYMBOL } from './const'; -import cronParser from 'cron-parser'; +import CronExpressionParser from 'cron-parser'; import { ICrontab } from '@/pages/crontab/type'; export default function browserType() { @@ -333,7 +333,7 @@ export function getCommandScript( export function parseCrontab(schedule: string): Date | null { try { - const time = cronParser.CronExpressionParser.parse(schedule); + const time = CronExpressionParser.parse(schedule); if (time) { return time.next().toDate(); }