package main
import (
"fmt"
"time"
"git.akyoto.dev/go/web"
)
func main() {
s := web.NewServer()
// Static route
s.Get("/", func(ctx web.Context) error {
return ctx.String("Hello")
})
// Parameter route
s.Get("/blog/:post", func(ctx web.Context) error {
return ctx.String(ctx.Request().Param("post"))
})
// Wildcard route
s.Get("/images/*file", func(ctx web.Context) error {
return ctx.String(ctx.Request().Param("file"))
})
// Middleware
s.Use(func(ctx web.Context) error {
start := time.Now()
defer func() {
fmt.Println(ctx.Request().Path(), time.Since(start))
}()
return ctx.Next()
})
s.Run(":8080")
}