main.go 594 B

123456789101112131415161718192021222324252627282930
  1. package main
  2. import (
  3. "git.nspix.com/golang/micro"
  4. "git.nspix.com/golang/micro/log"
  5. )
  6. type (
  7. mathRequest struct {
  8. NumA int `json:"num_a"`
  9. NumB int `json:"num_b"`
  10. }
  11. mathResponse struct {
  12. Value int `json:"value"`
  13. }
  14. )
  15. func main() {
  16. svr := micro.New(micro.WithName("test", "0.1.01"))
  17. svr.Handle("math.add", func(ctx micro.Context) (err error) {
  18. var req mathRequest
  19. if err = ctx.Bind(&req); err == nil {
  20. return ctx.Success(mathResponse{Value: req.NumA + req.NumB})
  21. } else {
  22. return ctx.Error(100, err.Error())
  23. }
  24. },micro.WithHttpMethod("GET"))
  25. log.Debug(svr.Run())
  26. }