35 lines
784 B
Go
35 lines
784 B
Go
//
|
|
// Todos Resource
|
|
// ==============
|
|
// This example demonstrates a project structure that defines a subrouter and its
|
|
// handlers on a struct, and mounting them as subrouters to a parent router.
|
|
// See also _examples/rest for an in-depth example of a REST service, and apply
|
|
// those same patterns to this structure.
|
|
//
|
|
package main
|
|
|
|
import (
|
|
"net/http"
|
|
|
|
"github.com/go-chi/chi"
|
|
"github.com/go-chi/chi/middleware"
|
|
)
|
|
|
|
func main() {
|
|
r := chi.NewRouter()
|
|
|
|
r.Use(middleware.RequestID)
|
|
r.Use(middleware.RealIP)
|
|
r.Use(middleware.Logger)
|
|
r.Use(middleware.Recoverer)
|
|
|
|
r.Get("/", func(w http.ResponseWriter, r *http.Request) {
|
|
w.Write([]byte("."))
|
|
})
|
|
|
|
r.Mount("/users", usersResource{}.Routes())
|
|
r.Mount("/todos", todosResource{}.Routes())
|
|
|
|
http.ListenAndServe(":3333", r)
|
|
}
|