本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在 Amplify 应用程序中使用环境变量
环境变量是可以将其添加到应用程序设置中以使其可供 Amplify Hosting 使用的键/值对。作为最佳实践,您可以使用环境变量来公开应用程序配置数据。您添加的所有环境变量都经过加密以防止恶意访问。
Amplify 会对您创建的环境变量强制实施如下约束。
-
Amplify 不允许您创建带有
AWS
前缀的环境变量名称。此前缀仅为 Amplify 内部使用而预留。 -
环境变量的值长度不能超过 5500 个字符。
重要
Amplify 环境变量参考
Amplify 控制台默认可访问以下环境变量。
变量名称 | 描述 | 示例值 |
---|---|---|
_BUILD_TIMEOUT |
构建超时时间(分钟) |
|
_LIVE_UPDATES |
该工具将升级到最新版本。 |
|
USER_DISABLE_TESTS |
在构建过程中会跳过测试步骤。您可以禁用应用程序中所有分支或特定分支的测试。 此环境变量用于在构建阶段执行测试的应用程序。有关设置此变量的更多信息,请参阅 为 Amplify 应用程序或分支关闭测试。 |
|
AWS_APP_ID |
当前构建的应用程序 ID |
|
AWS_BRANCH |
当前构建的分支名称 |
|
AWS_BRANCH_ARN |
当前版本的 Amazon 资源名称 (ARN) |
|
AWS_CLONE_URL |
用于提取 Git 存储库内容的克隆网址 |
|
AWS_COMMIT_ID |
当前构建的提交 ID 用于重新构建的“HEAD” |
|
AWS_JOB_ID |
当前构建的作业 ID。 这包括填充的一些“0”,因此它总是具有相同的长度。 |
|
AWS_PULL_REQUEST_ID |
拉取请求 Web 预览版本的拉取请求 ID。 在将 AWS CodeCommit 用作存储库提供程序时,此环境变量不可用。 |
|
AWS_PULL_REQUEST_SOURCE_BRANCH |
在 Amplify 控制台中提交到应用程序分支的拉取请求预览的功能分支名称。 |
|
AWS_PULL_REQUEST_DESTINATION_BRANCH |
在 Amplify 控制台中,功能分支拉取请求所提交到的应用程序分支的名称。 |
|
AMPLIFY_AMAZON_CLIENT_ID |
Amazon 客户端 ID |
|
AMPLIFY_AMAZON_CLIENT_SECRET |
Amazon 客户端密钥 |
|
AMPLIFY_FACEBOOK_CLIENT_ID |
Facebook 客户端 ID |
|
AMPLIFY_FACEBOOK_CLIENT_SECRET |
Facebook 客户端密钥 |
|
AMPLIFY_GOOGLE_CLIENT_ID |
Google 客户端 ID |
|
AMPLIFY_GOOGLE_CLIENT_SECRET |
Google 客户端密钥 |
|
AMPLIFY_DIFF_DEPLOY |
启用或禁用基于 diff 的前端部署。有关更多信息,请参阅 配置基于 diff 的前端构建和部署。 |
|
AMPLIFY_DIFF_DEPLOY_ROOT |
用于比较基于 diff 的前端部署的路径,相对于存储库的根目录。 |
|
AMPLIFY_DIFF_BACKEND |
启用或禁用基于 diff 的后端构建。这仅适用于 Gen 1 应用程序。有关更多信息,请参阅 为 Gen 1 应用程序配置基于 diff 的后端构建 |
|
AMPLIFY_BACKEND_PULL_ONLY |
Amplify 管理此环境变量。这仅适用于 Gen 1 应用程序。有关更多信息,请参阅 编辑现有前端以指向其他后端 |
|
AMPLIFY_BACKEND_APP_ID |
Amplify 管理此环境变量。这仅适用于 Gen 1 应用程序。有关更多信息,请参阅 编辑现有前端以指向其他后端 |
|
AMPLIFY_SKIP_BACKEND_BUILD |
如果您的构建规范中没有后端部分,并且想要禁用后端构建,请将此环境变量设置为 |
|
AMPLIFY_ENABLE_DEBUG_OUTPUT |
将此变量设置为 |
|
AMPLIFY_MONOREPO_APP_ROOT |
用于指定单一存储库应用程序的应用程序根目录的路径,相对于存储库的根目录。 |
|
AMPLIFY_USERPOOL_ID |
为进行身份验证而导入的 Amazon Cognito 用户群体的 ID |
|
AMPLIFY_WEBCLIENT_ID |
Web 应用程序要使用的应用程序客户端的 ID 必须将应用程序客户端配置为可以访问由 AMPLIFY_USERPOOL_ID 环境变量指定的 Amazon Cognito 用户群体。 |
|
AMPLIFY_NATIVECLIENT_ID |
原生应用程序要使用的应用程序客户端的 ID 必须将应用程序客户端配置为可以访问由 AMPLIFY_USERPOOL_ID 环境变量指定的 Amazon Cognito 用户群体。 |
|
AMPLIFY_IDENTITYPOOL_ID |
Amazon Cognito 身份池的 ID |
|
AMPLIFY_PERMISSIONS_BOUNDARY_ARN |
用作权限边界的 IAM policy 的 ARN,适用于 Amplify 创建的所有 IAM 角色。 |
|
AMPLIFY_DESTRUCTIVE_UPDATES |
将此环境变量设置为 true,以允许使用可能导致数据丢失的模式操作更新 GraphQL API。 |
|
注意
AMPLIFY_AMAZON_CLIENT_ID
和 AMPLIFY_AMAZON_CLIENT_SECRET
环境变量是 OAuth 令牌,而不是 AWS 访问密钥和密钥。
前端框架环境变量
如果您使用支持自有环境变量的前端框架开发应用程序,请务必了解这些变量与您在 Amplify 控制台中配置的环境变量不同。例如,React(前缀 REACT_APP)和 Gatsby(前缀 GATSBY)使您能够创建运行时环境变量,这些框架会自动将这些变量捆绑到您的前端生产构建中。要了解使用这些环境变量存储值的效果,请参阅您所使用的前端框架的文档。
将敏感值(例如 API 密钥)存储在这些以前端框架为前缀的环境变量中并不是最佳做法,因此强烈建议不要这样做。有关就此目的使用 Amplify 的构建时环境变量的示例,请参阅 在构建时访问环境变量。