...
1 package main
2
3 import (
4 "net/http"
5
6 "github.com/go-chi/chi"
7 )
8
9 type usersResource struct{}
10
11
12 func (rs usersResource) Routes() chi.Router {
13 r := chi.NewRouter()
14
15
16 r.Get("/", rs.List)
17 r.Post("/", rs.Create)
18 r.Put("/", rs.Delete)
19
20 r.Route("/{id}", func(r chi.Router) {
21
22 r.Get("/", rs.Get)
23 r.Put("/", rs.Update)
24 r.Delete("/", rs.Delete)
25 })
26
27 return r
28 }
29
30 func (rs usersResource) List(w http.ResponseWriter, r *http.Request) {
31 w.Write([]byte("aaa list of stuff.."))
32 }
33
34 func (rs usersResource) Create(w http.ResponseWriter, r *http.Request) {
35 w.Write([]byte("aaa create"))
36 }
37
38 func (rs usersResource) Get(w http.ResponseWriter, r *http.Request) {
39 w.Write([]byte("aaa get"))
40 }
41
42 func (rs usersResource) Update(w http.ResponseWriter, r *http.Request) {
43 w.Write([]byte("aaa update"))
44 }
45
46 func (rs usersResource) Delete(w http.ResponseWriter, r *http.Request) {
47 w.Write([]byte("aaa delete"))
48 }
49
View as plain text