1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- package http
- import (
- "errors"
- "net/http"
- "go-common/app/interface/live/push-live/conf"
- "go-common/app/interface/live/push-live/service"
- "go-common/library/ecode"
- "go-common/library/log"
- bm "go-common/library/net/http/blademaster"
- )
- var (
- pushLiveSvr *service.Service
- errInvalidParams = errors.New("invalid params")
- )
- // Init http
- func Init(c *conf.Config, srv *service.Service) {
- pushLiveSvr = srv
- // init router
- engineInner := bm.DefaultServer(c.BM.Inner)
- innerRouter(engineInner)
- if err := engineInner.Start(); err != nil {
- log.Error("bm.DefaultServer error(%v)", err)
- panic(err)
- }
- }
- // innerRouter init inner router api path.
- func innerRouter(e *bm.Engine) {
- // init api
- e.Ping(ping)
- // http internal api
- group := e.Group("/xlive/internal/push-live/")
- {
- // 用户每日推送额度占用
- group.POST("/limit/decrease", decrease)
- }
- }
- // ping check server ok.
- func ping(c *bm.Context) {
- if err := pushLiveSvr.Ping(c); err != nil {
- log.Error("[http.http|ping] push-live ping error(%v)", err)
- c.AbortWithStatus(http.StatusServiceUnavailable)
- }
- }
- // decrease decrease user daily push limit
- func decrease(c *bm.Context) {
- params := c.Request.Form
- business := params.Get("business")
- uuid := params.Get("uuid")
- targetID := params.Get("target_id")
- mids := params.Get("mids")
- // params check
- if business == "" || uuid == "" || targetID == "" || mids == "" {
- log.Error("[http.http|decrease] request params(%v) error(%v)", params, errInvalidParams)
- c.JSON(nil, ecode.RequestErr)
- return
- }
- if err := pushLiveSvr.LimitDecrease(c, business, targetID, uuid, mids); err != nil {
- log.Error("[http.http|decrease] pushLiveSvr.LimitDecrease error(%v), params(%v)", err, params)
- c.JSON(nil, ecode.RequestErr)
- return
- }
- log.Info("[http.http|decrease] decrease success, params(%v)", params)
- c.JSON(nil, nil)
- }
|