From 274fd526b7f6779d430c3253d96c8b6fffb93c85 Mon Sep 17 00:00:00 2001 From: CityFun <31820853+zhengkunwang223@users.noreply.github.com> Date: Thu, 23 Oct 2025 16:00:23 +0800 Subject: [PATCH] feat: optimization waf map load (#10730) --- .../cmd/server/web/static}/china.json | 0 .../cmd/server/web/static}/world.json | 0 core/cmd/server/web/web.go | 3 ++ core/init/router/router.go | 18 +++++++++- frontend/src/assets/json/china-name.json | 36 ------------------- 5 files changed, 20 insertions(+), 37 deletions(-) rename {frontend/src/assets/json => core/cmd/server/web/static}/china.json (100%) rename {frontend/src/assets/json => core/cmd/server/web/static}/world.json (100%) delete mode 100644 frontend/src/assets/json/china-name.json diff --git a/frontend/src/assets/json/china.json b/core/cmd/server/web/static/china.json similarity index 100% rename from frontend/src/assets/json/china.json rename to core/cmd/server/web/static/china.json diff --git a/frontend/src/assets/json/world.json b/core/cmd/server/web/static/world.json similarity index 100% rename from frontend/src/assets/json/world.json rename to core/cmd/server/web/static/world.json diff --git a/core/cmd/server/web/web.go b/core/cmd/server/web/web.go index ec5812201..d8bed447c 100644 --- a/core/cmd/server/web/web.go +++ b/core/cmd/server/web/web.go @@ -10,3 +10,6 @@ var Assets embed.FS //go:embed favicon.png var Favicon embed.FS + +//go:embed static/* +var Static embed.FS diff --git a/core/init/router/router.go b/core/init/router/router.go index eea6ba7b3..975162224 100644 --- a/core/init/router/router.go +++ b/core/init/router/router.go @@ -31,8 +31,9 @@ func setWebStatic(rootRouter *gin.RouterGroup) { rootRouter.StaticFS("/public", http.FS(web.Favicon)) rootRouter.StaticFS("/favicon.ico", http.FS(web.Favicon)) RegisterImages(rootRouter) + setStaticResource(rootRouter) rootRouter.GET("/assets/*filepath", func(c *gin.Context) { - c.Writer.Header().Set("Cache-Control", fmt.Sprintf("private, max-age=%d", 3600)) + c.Writer.Header().Set("Cache-Control", fmt.Sprintf("private, max-age=%d", 2628000)) if c.Request.URL.Path[len(c.Request.URL.Path)-1] == '/' { c.AbortWithStatus(http.StatusForbidden) return @@ -133,3 +134,18 @@ func RegisterImages(rootRouter *gin.RouterGroup) { _, _ = io.Copy(c.Writer, f) }) } + +func setStaticResource(rootRouter *gin.RouterGroup) { + rootRouter.GET("/api/v2/static/*filename", func(c *gin.Context) { + c.Writer.Header().Set("Cache-Control", fmt.Sprintf("private, max-age=%d", 2628000)) + filename := c.Param("filename") + filePath := "static" + filename + data, err := web.Static.ReadFile(filePath) + if err != nil { + c.AbortWithStatus(http.StatusNotFound) + return + } + c.Writer.Header().Set("Content-Type", "application/json; charset=utf-8") + c.Writer.Write(data) + }) +} diff --git a/frontend/src/assets/json/china-name.json b/frontend/src/assets/json/china-name.json deleted file mode 100644 index 1eb67cb33..000000000 --- a/frontend/src/assets/json/china-name.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "Anhui": "安徽", - "Beijing": "北京", - "Fujian": "福建", - "Gansu": "甘肃", - "Guangdong": "广东", - "Guangxi": "广西", - "Guizhou": "贵州", - "Hainan": "海南", - "Hebei": "河北", - "Henan": "河南", - "Heilongjiang": "黑龙江", - "Hubei": "湖北", - "Hunan": "湖南", - "Jilin": "吉林", - "Jiangsu": "江苏", - "Jiangxi": "江西", - "Liaoning": "辽宁", - "Inner Mongolia": "内蒙古", - "Ningxia": "宁夏", - "Qinghai": "青海", - "Shandong": "山东", - "Shanxi": "山西", - "Shaanxi": "陕西", - "Shanghai": "上海", - "Sichuan": "四川", - "Tianjin": "天津", - "Tibet": "西藏", - "Xinjiang": "新疆", - "Yunnan": "云南", - "Zhejiang": "浙江", - "Chongqing": "重庆", - "HongKong": "香港", - "Macao": "澳门", - "Taiwan": "台湾" -}