1
0
Fork 0

Make routes more readable by aliasing jwt.Handler

master
Dario Ernst 8 years ago
parent 2c90ef6151
commit 8a3fca4489

@ -235,6 +235,7 @@ func main() {
ValidationKeyGetter: func(token *jwt.Token) (interface{}, error) {
return []byte("TODO"), nil
}})
var jHdlr = jwt.Handler // make an alias so routes will be more readable
// Create or update schemas …
db.AutoMigrate(&User{})
@ -246,6 +247,7 @@ func main() {
db.Model(&Item{}).Related(&Unit{})
defer db.Close()
// define URL handlers
r := mux.NewRouter()
@ -255,23 +257,23 @@ func main() {
// TODO: delete, modify
// List Management
r.Handle("/lists", jwt.Handler(ehttp.HandlerFunc(createList))).Methods("POST") // Make a new list
r.Handle("/lists", jwt.Handler(ehttp.HandlerFunc(nil))).Methods("GET") // Get list of lists
r.Handle("/lists/{name}", jwt.Handler(ehttp.HandlerFunc(nil))).Methods("PUT") // Update list (name, icon, …)
r.Handle("/lists/{name}", jwt.Handler(ehttp.HandlerFunc(nil))).Methods("DELETE") // Delete a list
r.Handle("/lists/{name}", jwt.Handler(ehttp.HandlerFunc(nil))).Methods("GET") // Get list content (i.e., items)
r.Handle("/lists", jHdlr(ehttp.HandlerFunc(createList))).Methods("POST") // Make a new list
r.Handle("/lists", jHdlr(ehttp.HandlerFunc(nil))).Methods("GET") // Get list of lists
r.Handle("/lists/{name}", jHdlr(ehttp.HandlerFunc(nil))).Methods("PUT") // Update list (name, icon, …)
r.Handle("/lists/{name}", jHdlr(ehttp.HandlerFunc(nil))).Methods("DELETE") // Delete a list
r.Handle("/lists/{name}", jHdlr(ehttp.HandlerFunc(nil))).Methods("GET") // Get list content (i.e., items)
// List sharing
r.Handle("/lists/{name}/sharers", jwt.Handler(ehttp.HandlerFunc(nil))).Methods("POST") // Add new sharer
r.Handle("/lists/{name}/sharers", jwt.Handler(ehttp.HandlerFunc(nil))).Methods("GET") // Get list of sharers
r.Handle("/lists/{name}/sharers/{user}", jwt.Handler(ehttp.HandlerFunc(nil))).Methods("DELETE") // Remove sharer
r.Handle("/lists/{name}/sharers", jHdlr(ehttp.HandlerFunc(nil))).Methods("POST") // Add new sharer
r.Handle("/lists/{name}/sharers", jHdlr(ehttp.HandlerFunc(nil))).Methods("GET") // Get list of sharers
r.Handle("/lists/{name}/sharers/{user}", jHdlr(ehttp.HandlerFunc(nil))).Methods("DELETE") // Remove sharer
r.Handle("/lists/{name}/items", jwt.Handler(ehttp.HandlerFunc(nil))).Methods("PUT") // Add new item
r.Handle("/lists/{name}/items/{item}", jwt.Handler(ehttp.HandlerFunc(nil))).Methods("DELETE") // Delete item
r.Handle("/lists/{name}/items/{item}", jwt.Handler(ehttp.HandlerFunc(nil))).Methods("POST") // Update item
r.Handle("/lists/{name}/items", jHdlr(ehttp.HandlerFunc(nil))).Methods("PUT") // Add new item
r.Handle("/lists/{name}/items/{item}", jHdlr(ehttp.HandlerFunc(nil))).Methods("DELETE") // Delete item
r.Handle("/lists/{name}/items/{item}", jHdlr(ehttp.HandlerFunc(nil))).Methods("POST") // Update item
// Unit-history (unit is a ever-growing list only used for auto-completion)
r.Handle("/units", jwt.Handler(ehttp.HandlerFunc(nil))).Methods("POST") // Make a new unit
r.Handle("/units", jwt.Handler(ehttp.HandlerFunc(nil))).Methods("GET") // Get list of units
r.Handle("/units", jHdlr(ehttp.HandlerFunc(nil))).Methods("POST") // Make a new unit
r.Handle("/units", jHdlr(ehttp.HandlerFunc(nil))).Methods("GET") // Get list of units
loggedRouter := handlers.LoggingHandler(os.Stdout, r)
http.Handle("/", loggedRouter)

Loading…
Cancel
Save