Anmerkung
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Leitfaden verwenden Sie den Zeitfensterfilter, um ein Feature in einem Zeitplan für eine Go Gin-Webanwendung zu aktivieren.
Das in diesem Artikel verwendete Beispiel basiert auf der Go Gin-Webanwendung, die in der Schnellstartanleitung zur Featureverwaltung eingeführt wurde. Bevor Sie fortfahren, führen Sie die Schnellstartanleitung aus, um eine Go Gin-Webanwendung mit einem Beta-Feature-Flag zu erstellen. Nach Abschluss müssen Sie dem Feature-Flag "Beta" im App-Konfigurationsspeicher einen Zeitfensterfilter hinzufügen.
Prerequisites
- Erstellen Sie eine Go Gin-Webanwendung mit einer Featurekennzeichnung.
- Hinzufügen eines Zeitfensterfilters zur Featurekennzeichnung
Verwenden des Zeitfensterfilters
Sie haben in den Voraussetzungen einen Zeitfensterfilter für Ihr Beta-Feature-Flag hinzugefügt. Als Nächstes verwenden Sie das Feature-Flag mit dem Zeitfensterfilter in Ihrer Go Gin-Webanwendung.
Wenn Sie einen Feature-Manager erstellen, werden die integrierten Featurefilter automatisch der Featurefiltersammlung hinzugefügt.
Der vorhandene Code aus der Schnellstartanleitung behandelt bereits Zeitfensterfilter über den Feature-Manager:
// 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)
}
Die Featureauswertung in Ihrer Middleware berücksichtigt nun den Zeitfensterfilter:
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()
}
}
Zeitfensterfilter in Aktion
Starten Sie die Anwendung neu. Wenn Ihre aktuelle Uhrzeit vor der für den Zeitfensterfilter festgelegten Startzeit liegt, wird das Menüelement Beta nicht auf der Symbolleiste angezeigt. Dies liegt daran, dass die Beta-Featurekennzeichnung durch den Zeitfensterfilter deaktiviert ist.
Sobald die Startzeit abgelaufen ist, aktualisieren Sie Ihren Browser ein paar Mal. Sie werden feststellen, dass das Menüelement Beta jetzt angezeigt wird. Dies liegt daran, dass das Feature-Flag Beta jetzt durch den Zeitfensterfilter aktiviert ist.
Next steps
Wenn Sie mehr über die Featurefilter erfahren möchten, fahren Sie mit den folgenden Dokumenten fort.
Um die vollständige Funktionsübersicht der Go-Feature-Verwaltungsbibliothek zu erhalten, fahren Sie mit dem folgenden Dokument fort.