/ / Czy mogę przechowywać obiekty w process.env - node.js

Czy mogę przechowywać obiekty w process.env - node.js

Przechowuję obiekt (który ma kilka metod) process.env jak poniżej:

var obj = createObject(); // returns new object
process.env.OBJ = obj;

Kiedy uzyskuję dostęp do tego obiektu z innych miejsc, takich jak poniżej, nie widzę żadnej z metod.

var obj = process.env.OBJ;

Seans [Object Object].

Dlaczego?

Odpowiedzi:

4 dla odpowiedzi № 1

process.env to przechowywanie zmiennych środowiskowych, a nie przechowywanie obiektów. Możesz przechowywać swoje zmienne w następujący sposób:

process.env["CONSUMER_KEY"] = ""
process.env["CONSUMER_SECRET"] = ""
process.env["ACCESS_TOKEN_KEY"] = ""
process.env["ACCESS_TOKEN_SECRET"] = ""

Oto link do tego https://nodejs.org/api/process.html#process_process_env

Jeśli chcesz przechowywać swoje metody, powinieneś utworzyć obiekt globalny i przypisać do niego swoje metody.


2 dla odpowiedzi nr 2

Krótka odpowiedź brzmi: NIE

Nie, nie możesz przechowywać obiektów process.env ponieważ przechowuje zmienne środowiskowe takie jak PATH, SHELL, TMPDIR i inne, które są reprezentowane przez wartości String. Jeśli uruchomisz polecenie console.log(process.env); możesz zobaczyć wszystkie zmienne env w swoim systemie, w szczególności możesz ustawić własne zmienne env (np. process.env.home = "home"), które będą dostępne podczas procesu uruchamiania aplikacji nodejs.