cmd.go 772 B

123456789101112131415161718192021222324252627282930313233
  1. package cmd
  2. import (
  3. "context"
  4. "esproxy/internal/consts"
  5. "esproxy/internal/service"
  6. "github.com/gogf/gf/v2/frame/g"
  7. "github.com/gogf/gf/v2/net/ghttp"
  8. "github.com/gogf/gf/v2/os/gcmd"
  9. )
  10. var (
  11. Main = gcmd.Command{
  12. Name: "main",
  13. Usage: "main",
  14. Brief: "start esProxy http server",
  15. Func: func(ctx context.Context, parser *gcmd.Parser) (err error) {
  16. s := g.Server()
  17. s.Use(service.Middleware)
  18. s.BindHandler("/*", func(r *ghttp.Request) {
  19. rp, err := service.EsProxyManager.GetProxy(r.Context(), r.GetCtxVar(consts.QueryLevelKey).Int())
  20. if err != nil {
  21. r.Response.Status = 500
  22. g.Log().Errorf(r.Context(), "GetProxy Error:%v", err)
  23. return
  24. }
  25. rp.ServeHTTP(r.Response.Writer, r.Request)
  26. })
  27. s.Run()
  28. return nil
  29. },
  30. }
  31. )