From 2335157f6e72b84c388baa4285885cab37e62a41 Mon Sep 17 00:00:00 2001
From: RuoYi <yzz_ivy@163.com>
Date: Wed, 04 Dec 2024 08:52:13 +0800
Subject: [PATCH] 白名单支持对通配符路径匹配

---
 ruoyi-ui/src/utils/validate.js |   18 +++++++++++++++---
 1 files changed, 15 insertions(+), 3 deletions(-)

diff --git a/ruoyi-ui/src/utils/validate.js b/ruoyi-ui/src/utils/validate.js
index 287d518..13b7a15 100644
--- a/ruoyi-ui/src/utils/validate.js
+++ b/ruoyi-ui/src/utils/validate.js
@@ -1,13 +1,25 @@
 /**
+ * 路径匹配器
+ * @param {string} pattern
+ * @param {string} path
+ * @returns {Boolean}
+ */
+export function isPathMatch(pattern, path) {
+  const regexPattern = pattern.replace(/\//g, '\\/').replace(/\*\*/g, '.*').replace(/\*/g, '[^\\/]*')
+  const regex = new RegExp(`^${regexPattern}$`)
+  return regex.test(path)
+}
+
+/**
  * 判断value字符串是否为空 
  * @param {string} value
  * @returns {Boolean}
  */
 export function isEmpty(value) {
   if (value == null || value == "" || value == undefined || value == "undefined") {
-    return true;
+    return true
   }
-  return false;
+  return false
 }
 
 /**
@@ -87,7 +99,7 @@
  * @returns {Boolean}
  */
 export function isString(str) {
-  return typeof str === 'string' || str instanceof String;
+  return typeof str === 'string' || str instanceof String
 }
 
 /**

--
Gitblit v1.9.3