Feature-Flags für grundlegende und variantenreiche Funktionen werden abgerufen - AWS AppConfig

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Feature-Flags für grundlegende und variantenreiche Funktionen werden abgerufen

Bei Feature-Flag-Konfigurationen (TypkonfigurationenAWS.AppConfig.FeatureFlags) ermöglicht Ihnen der AWS AppConfig Agent, ein einzelnes Flag oder eine Teilmenge von Flags in einer Konfiguration abzurufen. Das Abrufen von einem oder zwei Flags ist nützlich, wenn Ihr Anwendungsfall nur einige Flags aus dem Konfigurationsprofil verwenden muss. Die folgenden Beispiele verwenden Python.

Anmerkung

Die Möglichkeit, ein einzelnes Feature-Flag oder eine Teilmenge von Flags in einer Konfiguration aufzurufen, ist nur in der AWS AppConfig Agent-Version 2.0.45 und höher verfügbar.

Sie können AWS AppConfig Konfigurationsdaten von einem lokalen HTTP Endpunkt abrufen. Verwenden Sie den ?flag=flag_name Abfrageparameter für ein AWS AppConfig Konfigurationsprofil, um auf ein bestimmtes Flag oder eine Liste von Flags zuzugreifen.

Um ein einzelnes Flag und seine Attribute abzurufen

curl "http://localhost:2772/applications/APPLICATION_NAME/environments/ENVIRONMENT_NAME/configurations/CONFIGURATION_NAME?flag=FLAG_NAME"

Um mehrere Flags und ihre Attribute abzurufen

curl "http://localhost:2772/applications/APPLICATION_NAME/environments/ENVIRONMENT_NAME/configurations/CONFIGURATION_NAME?flag=FLAG_NAME_ONE&flag=FLAG_NAME_TWO"

Um Feature-Flag-Varianten basierend auf dem Anruferkontext abzurufen

Die folgenden Python-Beispiele zeigen, wie Feature-Flag-Varianten basierend auf dem Aufruferkontext abgerufen werden. Um am besten zu veranschaulichen, wie diese Aufrufe getätigt werden, werden in diesem Abschnitt Beispielanrufe verwendet, die auf einem Szenario basieren, in dem ein Kunde die folgenden Varianten erstellt hat:

Ein Beispiel-Screenshot einer Feature-Flag mit Varianten.
Anmerkung

Um Flag-Varianten abzurufen, müssen Sie die neueste Version von AWS AppConfig Agent in Ihrer Computerumgebung verwenden. Weitere Informationen finden Sie in den folgenden Themen, in denen beschrieben wird, wie Sie den Agenten für jede der folgenden Computerumgebungen aktualisieren, installieren oder hinzufügen:

So rufen Sie Flag-Daten mithilfe des Anruferkontextes von jane_doe@example.org ab (wer hat sich nicht für das Beta-Programm angemeldet):

curl http://localhost:2772/applications/UIRefresh/environments/Production/configurations/Features \ -H "Context: email=jane_doe@example.org" \ -H "Context: opted_in_to_beta=false" { "ui_refresh": {"_variant":"QA","dark_mode_support":true,"enabled":true} }

So rufen Sie Flaggendaten mithilfe des Anruferkontextes von jane_doe@example.org ab (der sich für das Beta-Programm angemeldet hat):

curl http://localhost:2772/applications/UIRefresh/environments/Production/configurations/Features \ -H "Context: email=jane_doe@example.org" \ -H "Context: opted_in_to_beta=true" { "ui_refresh": {"_variant":"QA","dark_mode_support":true,"enabled":true} }

So rufen Sie Flaggendaten mithilfe des Anruferkontextes von jane_doe@qa-testers.example.org ab (ein Qualitätssicherungstester bei Example Organization):

curl http://localhost:2772/applications/UIRefresh/environments/Production/configurations/Features \ -H "Context: email=jane_doe@qa-testers.example.org" { "ui_refresh": {"_variant":"QA","dark_mode_support":true,"enabled":true} }

Um Flaggendaten ohne Anruferkontext abzurufen (was die Standardvariante zurückgibt)

curl http://localhost:2772/applications/UIRefresh/environments/Production/configurations/Features { "ui_refresh": {"_variant":"Default Variant","enabled":false} }

Um Flaggendaten für ein Szenario zur Verkehrsaufteilung abzurufen, um festzustellen, ob 1 von 10 zufälligen Anrufern die Variante „Stichprobenpopulation“ erhält

for i in {0..9} do ; \ curl http://localhost:2772/applications/UIRefresh/environments/Production/configurations/Features \ -H "Context: email=$i@example.org" { "ui_refresh": {"_variant":"Default Variant","enabled":false} } { "ui_refresh": {"_variant":"Default Variant","enabled":false} } { "ui_refresh": {"_variant":"Default Variant","enabled":false} } { "ui_refresh": {"_variant":"Default Variant","enabled":false} } { "ui_refresh": {"_variant":"Sample Population","dark_mode_support":false,"enabled":true} } { "ui_refresh": {"_variant":"Default Variant","enabled":false} } { "ui_refresh": {"_variant":"Default Variant","enabled":false} } { "ui_refresh": {"_variant":"Default Variant","enabled":false} } { "ui_refresh": {"_variant":"Default Variant","enabled":false} } { "ui_refresh": {"_variant":"Default Variant","enabled":false} } { "ui_refresh": {"_variant":"Default Variant","enabled":false} }