router.go 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. package main
  2. import (
  3. "github.com/go-martini/martini"
  4. )
  5. // martini router
  6. func route(m *martini.ClassicMartini) {
  7. // jwt handler
  8. // handler := New(Config{
  9. // ValidationKeyGetter: func(token *jwt.Token) (interface{}, error) {
  10. // return []byte(SignedString), nil
  11. // },
  12. // SigningMethod: jwt.SigningMethodHS256,
  13. // })
  14. // find a device by key
  15. m.Get("/application/v1/device/info", GetDeviceInfoByKey)
  16. // find a device by identifier
  17. m.Get("/application/v1/devices/:identifier/info", ApplicationAuthOnDeviceIdentifer, GetDeviceInfoByIdentifier)
  18. // get devie current status
  19. m.Get("/application/v1/devices/:identifier/status/current",
  20. ApplicationAuthOnDeviceIdentifer, CheckDeviceOnline, CheckProductConfig,
  21. GetDeviceCurrentStatus)
  22. // get devie latest status
  23. m.Get("/application/v1/devices/:identifier/status/latest",
  24. ApplicationAuthOnDeviceIdentifer, CheckDeviceOnline, CheckProductConfig,
  25. GetDeviceLatestStatus)
  26. // set device status
  27. m.Put("/application/v1/devices/:identifier/status",
  28. ApplicationAuthOnDeviceIdentifer, CheckDeviceOnline, CheckProductConfig,
  29. SetDeviceStatus)
  30. // send a command to device
  31. m.Post("/application/v1/devices/:identifier/commands",
  32. ApplicationAuthOnDeviceIdentifer, CheckDeviceOnline, CheckProductConfig,
  33. SendCommandToDevice)
  34. // and a rule to device
  35. m.Post("/application/v1/devices/:identifier/rules",
  36. ApplicationAuthOnDeviceIdentifer, CheckDeviceIdentifier,
  37. AddRule)
  38. // // user login
  39. // m.Post("/api/v1/login", binding.Bind(models.LoginRequest{}),
  40. // UserLogin)
  41. // // user register
  42. // m.Post("/api/v1/reg", binding.Bind(models.Reqrequest{}),
  43. // UserRegister)
  44. // // user api group
  45. // // jwt check and pass UserToken
  46. // m.Group("/api/v1/user", func(r martini.Router) {
  47. // // user modify password api
  48. // r.Post("/modifypass", ModifyPassword)
  49. // // user add a product
  50. // r.Post("/product", binding.Bind(models.Product{}), SaveProduct)
  51. // // delete a product
  52. // r.Delete("/product", binding.Bind(models.Product{}), DeleteProduct)
  53. // // get products
  54. // r.Get("/product", GetProducts)
  55. // }, handler.Serve)
  56. }