Documentation ¶
Index ¶
- func Cache(defaultCacheStore persist.CacheStore, defaultExpire time.Duration, ...) gin.HandlerFunc
- func CacheByRequestPath(defaultCacheStore persist.CacheStore, defaultExpire time.Duration, ...) gin.HandlerFunc
- func CacheByRequestURI(defaultCacheStore persist.CacheStore, defaultExpire time.Duration, ...) gin.HandlerFunc
- func CorsHeaders() []string
- type BeforeReplyWithCacheCallback
- type Config
- type Discard
- type GetCacheStrategyByRequest
- type Logger
- type OnHitCacheCallback
- type OnMissCacheCallback
- type OnShareSingleFlightCallback
- type Option
- func IgnoreQueryOrder() Option
- func WithBeforeReplyWithCache(cb BeforeReplyWithCacheCallback) Option
- func WithCacheStrategyByRequest(getGetCacheStrategyByRequest GetCacheStrategyByRequest) Option
- func WithDiscardHeaders(headers []string) Option
- func WithLogger(l Logger) 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() Option
- type ResponseCache
- type Strategy
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Cache ¶
func Cache( defaultCacheStore persist.CacheStore, defaultExpire time.Duration, opts ...Option, ) gin.HandlerFunc
Cache user must pass getCacheKey to describe the way to generate cache key
func CacheByRequestPath ¶ added in v1.0.0
func CacheByRequestPath(defaultCacheStore persist.CacheStore, defaultExpire time.Duration, opts ...Option) gin.HandlerFunc
CacheByRequestPath a shortcut function for caching response by url path, means will discard the query params
func CacheByRequestURI ¶ added in v1.0.0
func CacheByRequestURI(defaultCacheStore persist.CacheStore, defaultExpire time.Duration, opts ...Option) gin.HandlerFunc
CacheByRequestURI a shortcut function for caching response by uri
func CorsHeaders ¶ added in v1.9.0
func CorsHeaders() []string
Types ¶
type BeforeReplyWithCacheCallback ¶ added in v1.5.0
type BeforeReplyWithCacheCallback func(c *gin.Context, cache *ResponseCache)
type Config ¶ added in v1.0.0
type Config struct {
// contains filtered or unexported fields
}
Config contains all options
type Discard ¶ added in v1.0.0
type Discard struct { }
Discard the default logger that will discard all logs of gin-cache
type GetCacheStrategyByRequest ¶ added in v1.0.0
GetCacheStrategyByRequest User can this function to design custom cache strategy by request. The first return value bool means whether this request should be cached. The second return value Strategy determine the special strategy by this request.
type Logger ¶
type Logger interface {
Errorf(string, ...interface{})
}
Logger define the logger interface
type OnHitCacheCallback ¶ added in v1.1.0
OnHitCacheCallback define the callback when use cache
type OnMissCacheCallback ¶ added in v1.8.0
OnMissCacheCallback define the callback when use cache
type OnShareSingleFlightCallback ¶ added in v1.3.0
OnShareSingleFlightCallback define the callback when share the singleflight result
type Option ¶ added in v1.0.0
type Option func(c *Config)
Option represents the optional function.
func IgnoreQueryOrder ¶ added in v1.6.0
func IgnoreQueryOrder() Option
IgnoreQueryOrder will ignore the queries order in url when generate cache key . This option only takes effect in CacheByRequestURI function
func WithBeforeReplyWithCache ¶ added in v1.5.0
func WithBeforeReplyWithCache(cb BeforeReplyWithCacheCallback) Option
WithBeforeReplyWithCache will be called before replying with cache.
func WithCacheStrategyByRequest ¶ added in v1.0.0
func WithCacheStrategyByRequest(getGetCacheStrategyByRequest GetCacheStrategyByRequest) Option
WithCacheStrategyByRequest set up the custom strategy by per request
func WithDiscardHeaders ¶ added in v1.9.0
func WithOnHitCache ¶ added in v1.1.0
func WithOnHitCache(cb OnHitCacheCallback) Option
WithOnHitCache will be called when cache hit.
func WithOnMissCache ¶ added in v1.8.0
func WithOnMissCache(cb OnMissCacheCallback) Option
WithOnMissCache will be called when cache miss.
func WithOnShareSingleFlight ¶ added in v1.3.0
func WithOnShareSingleFlight(cb OnShareSingleFlightCallback) Option
WithOnShareSingleFlight will be called when share the singleflight result
func WithPrefixKey ¶ added in v1.7.0
WithPrefixKey will prefix the key
func WithSingleFlightForgetTimeout ¶ added in v1.2.0
WithSingleFlightForgetTimeout to reduce the impact of long tail requests. singleflight.Forget will be called after the timeout has reached for each backend request when timeout is greater than zero.
func WithoutHeader ¶ added in v1.8.0
func WithoutHeader() Option
type ResponseCache ¶ added in v1.5.0
ResponseCache record the http response cache