簡體   English   中英

在 NodeJs 中檢索 Azure 環境變量

[英]Retrieve Azure environment variables in NodeJs

我在 Azure 中設置了一個應用服務,其中包含一個靜態構建的 NodeJS Web 應用程序。 應用程序運行良好,我想將 api 的 api 密鑰和主機名移動到環境中的變量中。

在 Azure->Settings->Configuration->Application Settings 中,我添加了兩個環境變量並為每個變量設置了一個值。

在我的 Constants.js 文件中,我有

export const token = process.env.API_KEY;
export const host = process.env.API_HOST;

但 process.env.API_KEY 始終為空。

我什至嘗試過:

export const token = process.env["API_KEY"];

無濟於事。 我究竟做錯了什么?

你提供的兩個代碼都在我這邊工作。

export const token = process.env.API_KEY;
export const token = process.env["API_KEY"];

嘗試重新部署您的網站並在另一個瀏覽器中查看它。

在此處輸入圖片說明

更新:

const http = require('http');

//var APPINSIGHTS_INSTRUMENTATIONKEY= process.env.APPINSIGHTS_INSTRUMENTATIONKEY;

const server = http.createServer((request, response) => {
    var a,b,c;
    if(process.env.NODE_ENV === "production")
    {
        a= process.env.NODE_ENV ;
        b= process.env.APPINSIGHTS_INSTRUMENTATIONKEY;
        c= process.env.KEY_VALUE;
    }
    else if(process.env.NODE_ENV === "development")
    {
        a="Welcome";
        b="testparams";
        c="testvalue";
    }
    response.writeHead(200, {"Content-Type": "text/plain"});
    response.end(a+"  && "+b+"myCustomKey="+c);
});

const port = process.env.PORT || 1337;
server.listen(port);

console.log("Server running at http://localhost:%d", port);

我遇到了同樣的問題,並且有相同的 env vars(在作者的后續回答中提到)顯示然后最終發現 create-react-app 使用的腳本專門公開這些 vars 以及任何以REACT_APP_開頭的REACT_APP_

我調整了邏輯以允許通過其他環境變量,或者您可以重命名變量以使用上述前綴。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM