Documentation
¶
Index ¶
- func RateLimitMiddleware(maxRequests int, window time.Duration) func(http.Handler) http.Handler
- type DB
- type ErrorResponse
- type Handler
- func (h *Handler) GetAllDesktop(w http.ResponseWriter, r *http.Request)
- func (h *Handler) GetAllMobile(w http.ResponseWriter, r *http.Request)
- func (h *Handler) GetRandom(w http.ResponseWriter, r *http.Request)
- func (h *Handler) GetRandomDesktop(w http.ResponseWriter, r *http.Request)
- func (h *Handler) GetRandomMobile(w http.ResponseWriter, r *http.Request)
- func (h *Handler) GetRecentRequests(w http.ResponseWriter, r *http.Request)
- func (h *Handler) GetStats(w http.ResponseWriter, r *http.Request)
- func (h *Handler) Health(w http.ResponseWriter, r *http.Request)
- type Response
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type DB ¶
type DB interface {
LogRequest(ctx context.Context, log database.RequestLog) (int64, error)
GetRecentRequests(ctx context.Context, limit int) ([]database.RequestLog, error)
GetRequestsByType(ctx context.Context, agentType string, limit int) ([]database.RequestLog, error)
GetStats(ctx context.Context) (*database.Stats, error)
DeleteOldRequests(ctx context.Context, olderThan time.Duration) (int64, error)
}
DB interface for database operations
type ErrorResponse ¶
ErrorResponse represents an error response
type Handler ¶
type Handler struct {
// contains filtered or unexported fields
}
Handler handles HTTP requests
func (*Handler) GetAllDesktop ¶
func (h *Handler) GetAllDesktop(w http.ResponseWriter, r *http.Request)
GetAllDesktop returns all desktop user agents
func (*Handler) GetAllMobile ¶
func (h *Handler) GetAllMobile(w http.ResponseWriter, r *http.Request)
GetAllMobile returns all mobile user agents
func (*Handler) GetRandom ¶
func (h *Handler) GetRandom(w http.ResponseWriter, r *http.Request)
GetRandom returns a random user agent (desktop or mobile)
func (*Handler) GetRandomDesktop ¶
func (h *Handler) GetRandomDesktop(w http.ResponseWriter, r *http.Request)
GetRandomDesktop returns a random desktop user agent
func (*Handler) GetRandomMobile ¶
func (h *Handler) GetRandomMobile(w http.ResponseWriter, r *http.Request)
GetRandomMobile returns a random mobile user agent
func (*Handler) GetRecentRequests ¶
func (h *Handler) GetRecentRequests(w http.ResponseWriter, r *http.Request)
GetRecentRequests returns recent request logs
Click to show internal directories.
Click to hide internal directories.