

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用 AWS AppConfig 代理本地开发模式
<a name="appconfig-agent-how-to-use-local-development"></a>

AWS AppConfig 代理支持*本地开发模式*。如果启用本地开发模式，代理将从磁盘上的指定目录中读取配置数据。它不会从中检索配置数据 AWS AppConfig。可以通过更新指定目录中的文件来模拟配置部署。我们建议对以下使用案例采用本地开发模式：
+ 在使用 AWS AppConfig部署不同的配置版本之前，先对其进行测试。
+ 在向代码存储库提交更改之前，测试新功能的不同配置选项。
+ 测试不同的配置方案，来验证它们是否按预期发挥作用。

**警告**  
不要在生产环境中使用本地开发模式。此模式不支持重要的 AWS AppConfig 安全功能，例如部署验证和自动回滚。

使用以下步骤将 AWS AppConfig Agent 配置为本地开发模式。

**将 AWS AppConfig Agent 配置为本地开发模式**

1. 使用为您的计算环境描述的方法安装代理。 AWS AppConfig Agent 使用以下内容 AWS 服务：
   + [AWS Lambda](https://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-integration-lambda-extensions.html)
   + [Amazon EC2](https://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-integration-ec2.html)
   + [Amazon ECS 和 Amazon EKS](https://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-integration-containers-agent.html)

1. 如果代理正在运行，请停止它。

1. 将 `LOCAL_DEVELOPMENT_DIRECTORY` 添加到环境变量列表中。在文件系统上指定一个为代理提供读取权限的目录。例如 `/tmp/local_configs`。

1. 在目录中创建一个文件。文件名必须使用以下格式：

   ```
   {{application_name}}:{{environment_name}}:{{configuration_profile_name}}
   ```

   示例如下：

   ```
   Mobile:Development:EnableMobilePaymentsFeatureFlagConfiguration
   ```
**注意**  
要查看可添加到 `LOCAL_DEVELOPMENT_DIRECTORY` 目录中文件的功能标志示例，请参阅 [AWS AppConfig 代理本地开发模式的功能标志示例](appconfig-agent-how-to-use-local-development-samples.md)。
（可选）可以根据您为文件提供的扩展名，控制代理为配置数据返回的内容类型。例如，如果您使用 .json 扩展名来命名文件，则代理在应用程序请求该文件时返回的内容类型为 `application/json`。如果省略扩展名，代理将对内容类型使用 `application/octet-stream`。如果您需要精确的控制，可以提供 `.{{type}}%{{subtype}}` 格式的扩展名。代理将返回的内容类型为 `.type/subtype`。

1. 运行以下命令来重新启动代理并请求配置数据。

   ```
   curl http://localhost:2772/applications/{{application_name}}/environments/{{environment_name}}/configurations/{{configuration_name}}
   ```

代理会按照为代理指定的轮询间隔来检查本地文件是否有更改。如果未指定轮询间隔，则代理将使用 45 秒的默认间隔。这种轮询间隔检查可确保代理在本地开发环境中的行为与配置为与 AWS AppConfig 服务交互时的行为相同。

**注意**  
要部署本地开发配置文件的新版本，请使用新数据更新该文件。