live.go 846 B

12345678910111213141516171819202122232425262728293031323334
  1. package dao
  2. import (
  3. "context"
  4. "net/http"
  5. "go-common/library/ecode"
  6. )
  7. // Live gets live dynamic count
  8. func (d *Dao) Live(c context.Context) (count int, err error) {
  9. var req *http.Request
  10. if req, err = d.httpR.NewRequest("GET", d.liveURI, "", nil); err != nil {
  11. PromError("直播Live接口", "Live d.httpR.NewRequest(%s) error(%v)", d.liveURI, err)
  12. return
  13. }
  14. var res struct {
  15. Code int `json:"code"`
  16. Msg string `json:"msg"`
  17. Data struct{ Count int } `json:"data"`
  18. }
  19. err = d.httpR.Do(c, req, &res)
  20. if err != nil {
  21. PromError("直播Live接口", "Live d.httpR.Do(%s) error(%v)", d.liveURI, err)
  22. return
  23. }
  24. if res.Code != ecode.OK.Code() {
  25. PromError("直播Live接口", "Live dao.httpR.Do(%s) error(%v)", d.liveURI, err)
  26. err = ecode.Int(res.Code)
  27. return
  28. }
  29. count = res.Data.Count
  30. return
  31. }