labstack / labstack/echo

Group routes does not work without leading slash

Aperta Adatta ai principianti
#3,099 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Lingua principale
Go
Stelle
32.7k
Fork
2.8k
Merge medio
9h 35m
PR unite (30g)
6

Descrizione

Group route does not work without leading slash

I ran into an unexpected behavior with grouped routes.

g := e.Group("/v1")
g.GET("posts", handler)

Requesting:

GET /v1/posts

returns:

Not Found

Changing it to:

g.GET("/posts", handler)

works as expected.

I would expect Echo to handle the missing leading / when combining the group prefix and route path, or at least provide a warning during route registration.

It would be nice if both forms resulted in /v1/posts:

g.GET("posts", handler)
g.GET("/posts", handler)

Because it is very normal for a developer to not provide the slash since a group already means it's under that group (so slash should come automatically)

Otherwise its too confusing and something to forget easily when using the framework!!

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia riproducendo l'esempio di route raggruppate nell'issue e traccia il comportamento di registrazione e matching delle route di gruppo di Echo. Aggiungi una copertura di regressione sia per g.GET("posts", handler) sia per g.GET("/posts", handler) sotto /v1; il lavoro è completato quando le richieste a /v1/posts vengono risolte in entrambi i casi, oppure quando il comportamento di avviso documentato è coperto.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
go
Ambito
api, backend
Tipo di issue
Bug
Difficoltà
2/5
Tempo stimato
1-3 ore
Stato di attività
Attiva
Chiarezza
Abbastanza chiara
Idoneità per principianti
74/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.