Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In deze handleiding gebruikt u het tijdvensterfilter om een functie in te schakelen volgens een planning voor een Go Gin-webtoepassing.
Het voorbeeld dat in dit artikel wordt gebruikt, is gebaseerd op de Go Gin-webtoepassing die is geïntroduceerd in de quickstart voor functiebeheer. Voordat u verdergaat, voltooit u de quickstart om een Go Gin-webtoepassing te maken met een bètafunctievlag . Zodra dit is voltooid, moet u een tijdvensterfilter toevoegen aan de vlag Bèta-functie in uw App Configuration-archief.
Prerequisites
- Maak een Go Gin-webtoepassing met een functievlag.
- Een tijdvensterfilter toevoegen aan de functievlag
Het tijdvensterfilter gebruiken
U hebt een tijdvensterfilter toegevoegd voor de bètafunctie-vlag in de vereisten. Vervolgens gebruikt u de functievlag met het tijdvensterfilter in uw Go Gin-webtoepassing.
Wanneer u een functiebeheer maakt, worden de ingebouwde functiefilters automatisch toegevoegd aan de functiefilterverzameling
De bestaande code uit de quickstart verwerkt al tijdvensterfilters via functiebeheer:
// Create feature flag provider
featureFlagProvider, err := azappconfig.NewFeatureFlagProvider(appConfig)
if err != nil {
log.Fatalf("Error creating feature flag provider: %v", err)
}
// Create feature manager (supports built-in filters including TimeWindowFilter)
featureManager, err := featuremanagement.NewFeatureManager(featureFlagProvider, nil)
if err != nil {
log.Fatalf("Error creating feature manager: %v", err)
}
De functie-evaluatie in uw middleware respecteert nu het tijdvensterfilter:
func (app *WebApp) featureMiddleware() gin.HandlerFunc {
return func(c *gin.Context) {
// Check if Beta feature is enabled (TimeWindowFilter is automatically evaluated)
betaEnabled, err := app.featureManager.IsEnabled("Beta")
if err != nil {
log.Printf("Error checking Beta feature: %v", err)
}
// Store feature flag status for use in templates
c.Set("betaEnabled", betaEnabled)
c.Next()
}
}
Tijdvensterfilter in actie
Start de toepassing opnieuw. Als de huidige tijd eerder is dan de begintijd die is ingesteld voor het tijdvensterfilter, wordt het menu-item Bèta niet weergegeven op de werkbalk. Dit komt doordat de vlag bètafunctie is uitgeschakeld door het tijdvensterfilter.
Nadat de begintijd is verstreken, vernieuwt u uw browser een paar keer. U ziet dat het menu-item Bèta nu wordt weergegeven. Dit komt doordat de vlag bètafunctie nu is ingeschakeld door het tijdvensterfilter.
Next steps
Ga naar de volgende documenten voor meer informatie over de functiefilters.
Ga naar het volgende document voor het volledige overzicht van de functies van de bibliotheek voor functiebeheer in Go.