Azure 静态 Web 应用程序 NodeJS 环境变量

Iva*_*nAK 7 environment-variables azure node.js azure-devops azure-pipelines

我正在使用 Azure 静态 Web 应用程序服务和 Azure DevOps 管道来部署 NodeJS 应用程序。管道和构建进展顺利。现在我必须使用环境变量为后端定义一个 URL,但没有成功。

trigger:
- develop

jobs:
  - job: JobTest
    pool:
      vmImage: ubuntu-latest

    variables:
    - name: BACKEND_URL
      value: https://<some_url>
    - name: System.Debug
      value: true
    steps:
    - task: AzureStaticWebApp@0
      inputs:
        app_location: "/" 
        api_location: ""
        output_location: "dist"

      env:
        BACKEND_URL: $(BACKEND_URL)
        azure_static_web_apps_api_token: $(deployment_token)
    - bash: echo $(BACKEND_URL)
    - bash: echo $PWD
Run Code Online (Sandbox Code Playgroud)

从 NodeJS 代码中,在“/app/src/models/config.ts”文件中我有以下内容:

导出常量 BACKEND_URL = process.env.BACKEND_URL

如果我用实际的 URL 更改process.env.BACKEND_URL它将起作用。

此外,在 Azure Pipeline 中,此任务使用https://github.com/microsoft/Oryx构建系统。

问题是我如何在代码中使用管道中的 env ?

Dor*_* Lv 2

静态Web应用程序不能使用后端变量。

您可以考虑使用.env文件来配置环境变量。格式如“name=value ”(不带引号)。

并安装dotenv在要调用环境变量的文件中,通过以下方式访问它们process.env.

看看这篇文章: Node.js 使用 env 文件配置环境变量

我的另一个答案:https ://stackoverflow.com/a/67052708/13586071