在建置時存取環境變數 - AWS Amplify 託管

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

在建置時存取環境變數

若要在建置期間存取環境變數,請編輯您的建置設定以在您的建置命令中包含環境變數。

建置組態中的每個命令都會在 Bash Shell 內執行。如需在 Bash 中使用環境變數的詳細資訊,請參閱 GNU Bash 手冊中的 Shell 擴展

編輯建置設定以包含環境變數
  1. 登入 AWS Management Console 並開啟 Amplify 主控台

  2. 在 Amplify 主控台中,選擇託管 ,然後選擇建置設定

  3. 應用程式建置規格區段中,選擇編輯

  4. 將環境變數新增至您的建置命令。您現在應該能夠在下一個建置期間存取環境變數。此範例會變更 npm 的行為 (BUILD_ENV) 並新增API權杖 (TWITCH_CLIENT_ID) 用於環境檔案的外部服務,以供日後使用。

    build: commands: - npm run build:$BUILD_ENV - echo "TWITCH_CLIENT_ID=$TWITCH_CLIENT_ID" >> backend/.env
  5. 選擇 Save (儲存)。

讓伺服器端執行期可存取環境變數

根據預設,Next.js 伺服器元件無法存取應用程式的環境變數。此行為旨在保護儲存在應用程式在建置階段期間使用的環境變數中的任何秘密。

若要讓 Next.js 可存取特定環境變數,您必須修改 Amplify 建置規格檔案,才能在 Next.js 識別的環境檔案中設定環境變數。這可讓 Amplify 在建置應用程式之前載入環境變數。如需修改建置規格的詳細資訊,請參閱建置命令區段 中如何新增環境變數的範例。