description
    路由参数

    Elton支持各种不同种类的路由参数配置形式,正则表达式或*等。需要注意的是,如果路由参数使用正则,在参数不匹配时是无法获取对应的路由,导致接口404。

    1. package main
    2. import (
    3. "github.com/vicanso/elton"
    4. "github.com/vicanso/elton/middleware"
    5. )
    6. func main() {
    7. e := elton.New()
    8. e.Use(middleware.NewDefaultResponder())
    9. fn := func(c *elton.Context) (err error) {
    10. c.Body = c.Params.ToMap()
    11. return
    12. }
    13. e.GET("/books/{bookID:^[1-9][0-9]{0,3}$}", fn)
    14. e.GET("/books/{bookID:^[1-9][0-9]{0,3}$}/detail", fn)
    15. e.GET("/books/summary/*", fn)
    16. e.GET("/books/trending/{year}/{month}/{day}", fn)
    17. err := e.ListenAndServe(":3000")
    18. if err != nil {
    19. panic(err)
    20. }
    21. }