diff --git a/packages/app-console/src/views/cloudfunction/index.vue b/packages/app-console/src/views/cloudfunction/index.vue index 0c29c916e4..3541fd5b68 100644 --- a/packages/app-console/src/views/cloudfunction/index.vue +++ b/packages/app-console/src/views/cloudfunction/index.vue @@ -228,14 +228,14 @@ /> - +
{{ form._id }}
@@ -358,8 +358,8 @@ function getDefaultFormValue() { } const formRules = { - name: [{ required: true, message: '函数标识不可为空', trigger: 'blur' }], - label: [{ required: true, message: '函数显示名称不可为空', trigger: 'blur' }] + name: [{ required: true, message: '标识不可为空,且只能含字母、数字、下划线及中划线', trigger: 'blur', pattern: /^[a-zA-Z0-9_\-]+$/ }], + label: [{ required: true, message: '显示名称不可为空', trigger: 'blur' }] } export default { diff --git a/packages/system-server/src/handler/function/create.ts b/packages/system-server/src/handler/function/create.ts index e40aecd5f6..5462943042 100644 --- a/packages/system-server/src/handler/function/create.ts +++ b/packages/system-server/src/handler/function/create.ts @@ -35,6 +35,10 @@ export async function handleCreateFunction(req: Request, res: Response) { const body = req.body if (!body.name) return res.status(422).send('name cannot be empty') if (!body.code) return res.status(422).send('code cannot be empty') + if (!body.label) return res.status(422).send('label cannot be empty') + //check label + const labelPattern = /^[a-zA-Z0-9_\-]+$/ + if (!labelPattern.test(body.label)) return res.status(422).send('label 只能含字母、数字、下划线及中划线') // function name should be unique const total = await db.collection(CN_FUNCTIONS) @@ -52,7 +56,7 @@ export async function handleCreateFunction(req: Request, res: Response) { compiledCode: compileTs2js(body.code), tags: body.tags ?? [], triggers: [], - label: body.label ?? 'New Function', + label: body.label, version: 0, hash: hashFunctionCode(body.code), created_at: new Date(),