Skip to content

Commit c4ce47d

Browse files
committed
feat: 优化瓦片获取的路径匹配和处理
1 parent b5d5d32 commit c4ce47d

File tree

3 files changed

+16
-38
lines changed

3 files changed

+16
-38
lines changed

internal/controller/Index.go

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -64,9 +64,10 @@ func InitRouter() {
6464
//server.Get("/giservices/vectortile/maps/:name/sprites/sprite.json", VectorTileController.GetSpriteJson)
6565
server.Get("/giservices/vectortile/maps/:name/style.json", VectorTileController.GetStyleJson)
6666
server.Get("/giservices/vectortile/maps/:name/tileFeature/vectorstyles.json", VectorTileController.GetStyleJson)
67-
server.Get("/giservices/vectortile/maps/:name/:d0/:d1", VectorTileController.GetMvtFile)
68-
server.Get("/giservices/vectortile/maps/:name/:d0/:d1/:d2", VectorTileController.GetMvtFile)
69-
server.Get("/giservices/vectortile/maps/:name/:d0/:d1/:d2/:fileName", VectorTileController.GetMvtFile)
67+
server.Get("/giservices/vectortile/maps/:name/*", VectorTileController.GetMvtFile)
68+
//server.Get("/giservices/vectortile/maps/:name/:d0/:d1", VectorTileController.GetMvtFile)
69+
//server.Get("/giservices/vectortile/maps/:name/:d0/:d1/:d2", VectorTileController.GetMvtFile)
70+
//server.Get("/giservices/vectortile/maps/:name/:d0/:d1/:d2/:fileName", VectorTileController.GetMvtFile)
7071
}
7172
//////////
7273

@@ -99,7 +100,7 @@ func InitRouter() {
99100

100101
// 3dtiles适配
101102
{
102-
server.Get("/giservices/3dt/:name/:d0/:d1/:d2/:fileName", MapTileController.GetFile)
103+
server.Get("/giservices/3dt/:name/*", MapTileController.GetFile)
103104

104105
// 单场景多个图层处理,tileset.json
105106
// {

internal/controller/MapTileController.go

Lines changed: 5 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -86,25 +86,13 @@ func (*mapTileController) List(ctx *fiber.Ctx) error {
8686
}
8787

8888
func (c *mapTileController) GetFile(ctx *fiber.Ctx) error {
89-
vtName := ctx.Params("name")
90-
d0 := ctx.Params("d0")
91-
d1 := ctx.Params("d1")
92-
d2 := ctx.Params("d2")
93-
d3 := ctx.Params("fileName")
94-
89+
df := ctx.Params("*")
90+
dfArray := strings.Split(df, "/")
9591
var dp []string
96-
if d0 != "" {
97-
dp = append(dp, d0)
98-
}
99-
if d1 != "" {
100-
dp = append(dp, d1)
101-
}
102-
if d2 != "" {
103-
dp = append(dp, d2)
104-
}
105-
if d3 != "" {
106-
dp = append(dp, d3)
92+
for _, s := range dfArray {
93+
dp = append(dp, s)
10794
}
95+
vtName := ctx.Params("name")
10896

10997
requestFileName := dp[len(dp)-1]
11098
ct := fiber.MIMEOctetStream

internal/controller/VectorTileController.go

Lines changed: 6 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -187,26 +187,15 @@ func (c *vectorTileController) GetStyleJson(ctx *fiber.Ctx) error {
187187
}
188188

189189
func (c *vectorTileController) GetMvtFile(ctx *fiber.Ctx) error {
190-
vtName := ctx.Params("name")
191-
d0 := ctx.Params("d0")
192-
d1 := ctx.Params("d1")
193-
d2 := ctx.Params("d2")
194-
d3 := ctx.Params("fileName")
195-
190+
df := ctx.Params("*")
191+
dfArray := strings.Split(df, "/")
196192
var dp []string
197-
if d0 != "" {
198-
dp = append(dp, d0)
199-
}
200-
if d1 != "" {
201-
dp = append(dp, d1)
202-
}
203-
if d2 != "" {
204-
dp = append(dp, d2)
205-
}
206-
if d3 != "" {
207-
dp = append(dp, d3)
193+
for _, s := range dfArray {
194+
dp = append(dp, s)
208195
}
209196

197+
vtName := ctx.Params("name")
198+
210199
requestFileName := dp[len(dp)-1]
211200
ct := fiber.MIMEApplicationJSONCharsetUTF8
212201
if strings.HasSuffix(requestFileName, ".mvt") {

0 commit comments

Comments
 (0)