jwk_client.go
func NewJWKClientWithCache(options JWKClientOptions, extractor RequestTokenExtractor, keyCacher KeyCacher) *JWKClient {
	if extractor == nil {
		extractor = RequestTokenExtractorFunc(FromHeader)
	}
	if keyCacher == nil {
		keyCacher = newMemoryPersistentKeyCacher()
	}
	if options.Client == nil {
		options.Client = http.DefaultClient
	}

	return &JWKClient{
		keyCacher: keyCacher,
		options:   options,
		extractor: extractor,
	}
}
func NewJWKClientWithCache(options JWKClientOptions, extractor RequestTokenExtractor, keyCacher KeyCacher) *JWKClient {
	if extractor == nil {
		extractor = RequestTokenExtractorFunc(FromHeader)
	}
	if keyCacher == nil {
		keyCacher = newMemoryPersistentKeyCacher()
	}
	if options.Client == nil {
		options.Client = http.DefaultClient
	}

	return &JWKClient{
		keyCacher: keyCacher,
		options:   options,
		extractor: extractor,
	}
}
func NewJWKClientWithCache ( options JWKClientOptions , extractor RequestTokenExtractor , keyCacher KeyCacher ) * JWKClient { if extractor == nil { extractor = RequestTokenExtractorFunc ( FromHeader ) } if keyCacher == nil { keyCacher = newMemoryPersistentKeyCacher ( ) } if options . Client == nil { options . Client = http . DefaultClient } return & JWKClient { keyCacher : keyCacher , options : options , extractor : extractor , } }
// NewJWKClientWithCache creates a new JWKClient instance from the
// provided options and a custom keycacher interface.
// Passing nil to keyCacher will create a persistent key cacher
NewJWKClientWithCache creates a new JWKClient instance from the provided options and a custom keycacher interface . Passing nil to keyCacher will create a persistent key cacher