Versions in this module Expand all Collapse all v0 v0.0.1 Sep 30, 2024 Changes in this version + func NewCache(defaultCacheStore persist.CacheStore, defaultExpire time.Duration, ...) app.HandlerFunc + func NewCacheByKeyStrategy(defaultCacheStore persist.CacheStore, defaultExpire time.Duration, ...) app.HandlerFunc + func NewCacheByRequestPath(store persist.CacheStore, duration time.Duration, opts ...Option) app.HandlerFunc + func NewCacheByRequestURI(store persist.CacheStore, duration time.Duration, opts ...Option) app.HandlerFunc + func NewCacheByRequestURIWithIgnoreQueryOrder(store persist.CacheStore, duration time.Duration, opts ...Option) app.HandlerFunc + type BeforeReplyWithCacheCallback func(c *app.RequestContext, cache *ResponseCache) + type ByPath struct + func (s *ByPath) GenerateKey(c *app.RequestContext) (string, error) + type ByURI struct + func (s *ByURI) GenerateKey(c *app.RequestContext) (string, error) + type ByURIWithIgnoreQueryOrder struct + func (s *ByURIWithIgnoreQueryOrder) GenerateKey(c *app.RequestContext) (string, error) + type GetCacheStrategyByRequest func(ctx context.Context, c *app.RequestContext) (bool, Strategy) + type KeyStrategy interface + GenerateKey func(c *app.RequestContext) (string, error) + type OnHitCacheCallback func(ctx context.Context, c *app.RequestContext) + type OnMissCacheCallback func(ctx context.Context, c *app.RequestContext) + type OnShareSingleFlightCallback func(ctx context.Context, c *app.RequestContext) + type Option struct + F func(o *Options) + func WithBeforeReplyWithCache(cb BeforeReplyWithCacheCallback) Option + func WithCacheStrategyByRequest(getGetCacheStrategyByRequest GetCacheStrategyByRequest) Option + func WithOnHitCache(cb OnHitCacheCallback) Option + func WithOnMissCache(cb OnMissCacheCallback) Option + func WithOnShareSingleFlight(cb OnShareSingleFlightCallback) Option + func WithPrefixKey(prefix string) Option + func WithSingleFlightForgetTimeout(forgetTimeout time.Duration) Option + func WithoutHeader(b bool) Option + type Options struct + func (o *Options) Apply(opts []Option) + type ResponseCache struct + Data []byte + Header http.Header + Status int + type Strategy struct + CacheDuration time.Duration + CacheKey string + CacheStore persist.CacheStore