

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 擷取基本和多變體功能旗標
<a name="appconfig-integration-retrieving-feature-flags"></a>

對於特徵標記組態 （類型 的組態`AWS.AppConfig.FeatureFlags`)， AWS AppConfig 代理程式可讓您擷取組態中的單一標記或標記子集。如果您的使用案例只需要使用組態描述檔中的幾個旗標，則擷取一或兩個旗標很有用。下列範例使用 cURL。

**注意**  
只有在 AWS AppConfig 代理程式 2.0.45 版及更高版本中，才能在組態中呼叫單一功能旗標或一部分旗標。

您可以從本機 HTTP 端點擷取 AWS AppConfig 組態資料。若要存取特定旗標或旗標清單，請使用組態描述檔的`?flag=FLAG_KEY` AWS AppConfig 查詢參數。

**擷取單一旗標及其屬性**

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

**擷取多個旗標及其屬性**

```
curl "http://localhost:2772/applications/APPLICATION_NAME/environments/ENVIRONMENT_NAME/configurations/CONFIGURATION_NAME?flag=FLAG_KEY_ONE&flag=FLAG_KEY_TWO"
```

**根據來電者內容擷取特徵標記變體**

下列 cURL 範例示範如何根據來電者內容擷取特徵標記變體。為了最好地說明如何進行這些呼叫，本節根據客戶建立類似下列變體的情況使用範例呼叫：

![\[具有變體的功能旗標範例螢幕擷取畫面。\]](http://docs.aws.amazon.com/zh_tw/appconfig/latest/userguide/images/flag-variant-example.png)


**注意**  
若要擷取旗標變體，您必須在運算環境中使用最新版本的 AWS AppConfig 代理程式。如需詳細資訊，請參閱下列主題，說明如何更新、安裝或新增下列每個運算環境的代理程式：  
對於 Lambda 運算環境： [新增 AWS AppConfig Agent Lambda 延伸模組](appconfig-integration-lambda-extensions-add.md)
對於 Amazon EC2 運算環境： [步驟 2：（必要） 在 Amazon EC2 執行個體上安裝和啟動 AWS AppConfig 代理程式](appconfig-integration-ec2.md#appconfig-integration-ec2-installing)
對於 Amazon ECS 運算環境： [啟動 Amazon ECS 整合的 AWS AppConfig 代理程式](appconfig-integration-containers-agent-starting-ecs.md)
對於 Amazon EKS 運算環境： [啟動 Amazon EKS 整合的 AWS AppConfig 代理程式](appconfig-integration-containers-agent-starting-eks.md)

**若要使用 jane\$1doe@example.org 的發起人內容擷取旗標資料 （尚未選擇加入 Beta 版計畫者）：**

```
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}
}
```

**若要使用 jane\$1doe@example.org 的發起人內容擷取旗標資料 (*已*選擇加入 Beta 版計劃者）：**

```
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}
}
```

**若要使用 jane\$1doe@qa-testers.example.org 的發起人內容擷取旗標資料 （其為範例組織的品質保證測試人員）：**

```
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}
}
```

**在沒有呼叫者內容的情況下擷取旗標資料 （傳回預設變體）**

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

**擷取流量分割案例的旗標資料，以判斷 10 名隨機發起人中是否有 1 名接收 'sample population' 變體**

```
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}
}
```