globalLimit.go 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. package v1
  2. type GlobalLimitRequest struct {
  3. Uid int `json:"uid" form:"uid" binding:"required"`
  4. HostId int `json:"host_id" form:"host_id" binding:"required"`
  5. Comment string `json:"comment" form:"comment" binding:"required"`
  6. }
  7. type GlobalLimitSendRequest struct {
  8. Tag string `json:"tag" form:"tag" binding:"required"`
  9. Bps string `form:"bps" json:"bps" default:"0"`
  10. MaxBytesMonth string `form:"max_bytes_month" json:"max_bytes_month" default:"0"`
  11. ExpiredAt string `form:"expired_at" json:"expired_at omitempty"`
  12. Comment string `form:"comment" json:"comment"`
  13. }
  14. type GlobalLimitRequireResponse struct {
  15. ExpiredAt string
  16. GlobalLimitName string
  17. Bps string
  18. MaxBytesMonth string
  19. }
  20. type GeneralLimitRequireRequest struct {
  21. Uid int `json:"uid" form:"uid" binding:"required"`
  22. HostId int `json:"host_id" form:"host_id" binding:"required"`
  23. Tag string `json:"tag" form:"tag" binding:"required"`
  24. RuleId int `json:"rule_id" form:"rule_id" binding:"required"`
  25. }
  26. type AccessRules struct {
  27. Mode string `json:"mode" form:"mode" default:"deny"`
  28. Default string `json:"default" form:"default" default:"allow"`
  29. Rules []AccessRuleRules `json:"rules" form:"rules"`
  30. }
  31. type AccessRuleRules struct {
  32. Rule string `json:"rule" form:"rule"`
  33. Action string `json:"action" form:"action" default:"deny"`
  34. }