Lesen Sie Umgebungsvariablen in Node.js

Lesezeit: 4 Minuten

Lesen Sie Umgebungsvariablen in Nodejs
Jayesh

Gibt es eine Möglichkeit, Umgebungsvariablen in Node.js-Code zu lesen?

Wie zum Beispiel Pythons os.environ['HOME'].

Lesen Sie Umgebungsvariablen in Nodejs
Jayesh

process.env.ENV_VARIABLE

Woher ENV_VARIABLE ist der Name der Variablen, auf die Sie zugreifen möchten.

Sehen Node.js-Dokumentation für process.env.

  • Beachten Sie, dass dies außerhalb des Knotenprozesses und seiner Unterprozesse nicht sichtbar ist. ZB wäre es nicht sichtbar, wenn Sie feuern env in einem anderen Shell-Fenster, während der Knotenprozess ausgeführt wird, noch in derselben Shell, nachdem der Knotenprozess beendet wurde.

    – Marko Bonaci

    30. Mai 2015 um 10:10 Uhr


  • dies funktioniert auch für die Zuweisung von Variablen. process.env.FOO = "foo"; funktioniert.

    – Küken

    11. September 2015 um 17:16 Uhr

  • Es ist erwähnenswert, dass dies in einer React-Anwendung nicht funktioniert. process.env wird aus Sicherheitsgründen desinfiziert. Nur Variablen, die mit beginnen REACT_ENV_ stehen zur Verfügung. Sehen: github.com/facebookincubator/create-react-app/blob/master/…

    – Mark Edington

    11. Juli 2017 um 12:25 Uhr

  • @ MarkEdington Ich denke, es sollte sein REACT_APP_

    – Herr 14

    19. Oktober 2017 um 15:35 Uhr

  • @Mr.14 Recht haben Sie! Es ist REACT_APP_, nicht REACT_ENV_

    – Mark Edington

    20. Oktober 2017 um 18:17 Uhr

Lesen Sie Umgebungsvariablen in Nodejs
Subodh Ghulaxe

Beim Benutzen Node.jskönnen Sie Umgebungsvariablen nach Schlüssel aus der abrufen process.env Objekt:

zum Beispiel

var mode   = process.env.NODE_ENV;
var apiKey = process.env.apiKey; // '42348901293989849243'

Hier ist die Antwort, die das Festlegen von Umgebungsvariablen in node.js erklärt

  • Welche Bibliothek ist erforderlich, um die obige Methode process.env zu verwenden?

    – user_mda

    1. November 2015 um 19:27 Uhr

  • @user_mda process.env ist in die node.js-API integriert.

    – Jason Axelson

    20. Januar 2016 um 1:47 Uhr

  • Setze ich einfach alles, was ich will, auf die process.env? Warum setzen die Leute es dort im Gegensatz zu einem Konfigurationsobjekt, das von node.js require()’ed wird?

    – PDN

    27. April 2016 um 1:05 Uhr

  • process.env gibt Ihnen Zugriff auf Umgebungsvariablen, die auf Betriebssystemebene festgelegt wurden. Diese können auf verschiedene Arten festgelegt werden und hängen davon ab, wo Sie Ihre App bereitstellen. Ich führe meine lokale App beispielsweise häufig mit NODE_ENV=development NODE_PATH=lib node server.js aus. Dann gibt process.env.NODE_PATH ‘lib’ zurück

    – Russel Ormes

    6. Mai 2016 um 19:22 Uhr

1646174715 747 Lesen Sie Umgebungsvariablen in Nodejs
Benutzer2574650

Wenn Sie einen in Ihrem Node.js-Programm generierten Zeichenfolgenschlüssel verwenden möchten, sagen Sie: var v = 'HOME'können Sie verwenden
process.env[v].

Andernfalls, process.env.VARNAME muss in Ihrem Programm fest codiert werden.

  • Warum hast du process.env['HOME']?

    – AlgoRythm

    12. September 2019 um 23:52 Uhr

1646174715 615 Lesen Sie Umgebungsvariablen in Nodejs
Igor Litwinowitsch

Um Umgebungsvariablen in Node.JS abzurufen, können Sie verwenden process.env.VARIABLE_NAMEaber vergessen Sie nicht, dass das Zuweisen einer Eigenschaft auf process.env den Wert implizit in einen String umwandelt.

Vermeiden Sie Boolesche Logik

Auch wenn Ihre .env-Datei eine Variable wie definiert SHOLD_SEND=false oder SOLLTE_SEND=0werden die Werte umgerechnet zu Saiten („falsch“ und „0“ bzw.) und nicht als boolesche Werte interpretiert.

if (process.env.SHOULD_SEND) {
 mailer.send();
} else {
  console.log("this won't be reached with values like false and 0");
}

Stattdessen sollten Sie explizite Überprüfungen vornehmen. Ich habe festgestellt, dass abhängig vom Umgebungsnamen ein langer Weg geht.

 db.connect({
  debug: process.env.NODE_ENV === 'development'
 });

Sie können verwenden env Paket zum Verwalten Ihrer Umgebungsvariablen pro Projekt:

  • Ein … kreieren .env Datei im Projektverzeichnis und legen Sie alle Ihre Variablen dort ab.
  • Fügen Sie diese Zeile oben in Ihrer Anwendungseintragsdatei hinzu:
    require('dotenv').config();

Getan. Jetzt können Sie mit auf Ihre Umgebungsvariablen zugreifen process.env.ENV_NAME.

  • Das dotenv-Paket ist nützlich, aber die gestellte Frage wird durch das Lesen von process.env.ENV_VARIABLE beantwortet. Beim dovenv-Paket dreht sich alles um das Laden von Einstellungen aus einer Datei in die Umgebung.

    – Robert Patterson

    11. Mai 2018 um 14:40 Uhr

  • Das ist mein Punkt: Verwalten und Laden von Umgebungsvariablen aus env Bücherei.

    – Huy Vo

    11. Mai 2018 um 15:38 Uhr

  • Sie können dasselbe auf eine nicht-node.js-spezifische Weise tun, indem Sie die verwenden envdir Nützlichkeit.

    – Chris Johnson

    23. Juni 2018 um 18:23 Uhr

  • Ähnlich zu github.com/bitrise-io/envman was auch nicht ist node-Spezifisch.

    – MarkHu

    1. Dezember 2018 um 2:30 Uhr

  • Dies sollte die Antwort sein. Ich habe es gerade mit dem versucht process.env.MY_VAR und würde nicht funktionieren, bis ich den Requre-Satz gesetzt habe. Danke!!

    – Juliangonzales

    26. September 2021 um 20:42 Uhr

1646174716 874 Lesen Sie Umgebungsvariablen in Nodejs
Juanma Menendez

Wenn Sie alle Umgebungsvariablen zur Ausführungszeit sehen möchten, schreiben Sie einfach in eine nodejs-Datei wie server.js:

console.log(process.env);

  • Das dotenv-Paket ist nützlich, aber die gestellte Frage wird durch das Lesen von process.env.ENV_VARIABLE beantwortet. Beim dovenv-Paket dreht sich alles um das Laden von Einstellungen aus einer Datei in die Umgebung.

    – Robert Patterson

    11. Mai 2018 um 14:40 Uhr

  • Das ist mein Punkt: Verwalten und Laden von Umgebungsvariablen aus env Bücherei.

    – Huy Vo

    11. Mai 2018 um 15:38 Uhr

  • Sie können dasselbe auf eine nicht-node.js-spezifische Weise tun, indem Sie die verwenden envdir Nützlichkeit.

    – Chris Johnson

    23. Juni 2018 um 18:23 Uhr

  • Ähnlich zu github.com/bitrise-io/envman was auch nicht ist node-Spezifisch.

    – MarkHu

    1. Dezember 2018 um 2:30 Uhr

  • Dies sollte die Antwort sein. Ich habe es gerade mit dem versucht process.env.MY_VAR und würde nicht funktionieren, bis ich den Requre-Satz gesetzt habe. Danke!!

    – Juliangonzales

    26. September 2021 um 20:42 Uhr

Lesen Sie Umgebungsvariablen in Nodejs
Sahil Thummar

Verwenden von process.env. Wenn Home der Name Ihrer Umgebungsvariablen ist, versuchen Sie Folgendes:

const HOME = process.env.HOME;

Oder

const { HOME } = process.env;

905650cookie-checkLesen Sie Umgebungsvariablen in Node.js

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy