Конфигурирайте вашето приложение за различни среди, като използвате променливите на средата. Той също така добавя допълнителен слой на сигурност към приложението.
Променливите на средата са динамично наименувани двойки ключ-стойност, заделени в хост средата, използвани за въздействие върху изпълняваните операции на програмите.
Променливите на средата са популярни за взаимодействие с чувствителни към приложението данни, тъй като предоставят абстракция върху интерфейса на средата. Можете да използвате променливи на средата, за да увеличите сигурността на вашите приложения.
Go предоставя вградена поддръжка за работа с променливи на средата и има много пакети за работа с променливи на среда и файлове с променливи на среда (.env) в екосистемата Go.
Променливи на средата и os пакет
The операционна система пакетът предоставя функционалност за взаимодействие с операционната система на хост средата. The операционна система пакетът предоставя методи за настройка и извличане на двойки ключ-стойност на променлива на средата.
Импортирайте тези пакети за настройка, зареждане и отпечатване на променливите на средата на вашата хост машина.
импортиране (
"fmt"
"дневник"
"операционна система"
"струни"
)
Можете да зададете двойки ключ-стойност на променлива на средата с Setenv метод на операционна система пакет. The Setenv метод приема двойката и връща възможните грешки.
грешка := ос. Setenv(„ИМЕ“, "Джон")
грешка = ос. Setenv("ДРУГО", "СЪРНА")
ако грешка!= нула {
връщане
}
Можете да извлечете променливи на средата чрез ключовете (имена) с Getenv метод. The Getenv методът приема името на променливата на средата и връща стойността, свързана с ключа.
име := ос. Getenv(„ИМЕ“)
друго := ос. Getenv("ДРУГО")
The Environ метод ви позволява достъп до всички променливи на средата на вашата хост машина. The Environ метод връща част от низове, през които можете да преминете и да получите достъп до ключовете на променливите на средата.
за _, променливи := диапазон операционна система. Environ() {
envPair := низове. SplitN(променливи, "=", 2)
fmt. Println (envPair[0])
}
The РазделянеN метод на пакета низове помага при разделянето чрез разделител. В този случай той разделя името на променливата от стойността.
Как да заредите променливи на средата от .env файлове
The godotenv пакетът е Go порт на проекта Ruby dotenv за зареждане на променливи на средата от файла dotenv.
The godotenv пакет предоставя функционалности за работа с dotenv файлове над операционна система пакет, от който можете да пишете и четете .env файлове.
Изпълнете тази команда, за да създадете a .env файл във вашата работна директория.
докосване .env
Командата touch се използва за създаване на нови файлове. Добавете следните редове код към файла dotenv. Ще използвате godotenv пакет за четене на тези променливи на средата във вашата програма Go.
# околна среда
ИМЕ="Джон"
ДРУГО="Джеймс"
Изпълнете тази команда в терминала на директорията на вашия проект, за да инсталирате godotenv пакет като зависимост от проекта.
отивам вземете github.com/joho/godotenv
Импортирайте тези пакети във вашия Go файл. Ще ги използвате заедно с godotenv пакет за зареждане на променливи на средата и отпечатването им в конзолата или регистриране на грешки.
импортиране (
"fmt"
"github.com/joho/godotenv"
"дневник"
"операционна система"
)
Можете да заредите a .env файл с Заредете метод на godotenv пакет. The Заредете методът приема името на файла и връща възможните грешки.
грешка := godotenv. Заредете (".env")
ако грешка!= нула {
дневник. фаталф(„Грешка при зареждане на файл с променливи на средата“)
}
След като заредите файла dotenv, можете да използвате Getenv метод на операционна система пакет за зареждане на променливите на средата.
име := ос. Getenv(„ИМЕ“)
друго := ос. Getenv("ДРУГО")
fmt. Println (име)
fmt. Println (друго)
Можете да пишете във файлове dotenv с Пишете метод на godotenv пакет. The Пишете метод приема карта от низове към низове и връща възможни грешки.
функwriteToDotEnv(){
env, _ := godotenv. демаршал("KEY=стойност")
грешка := godotenv. Напишете (env, ".env")
ако грешка!= нула {
дневник. Println(„Възникна грешка при записване във файла dotenv“)
}
}
The godotenv package демаршалира низа на двойката ключ-стойност с Unmarshal метод и околна среда променлива се превръща в карта на низ към тип низ.
The writeToDotEnv функция записва съдържанието на картата в .env файл в работната директория. Тази операция презаписва съществуващите данни.
Променливите на средата винаги са полезни
Променливите на средата улесняват задаването и промяната на параметрите за изпълнение на приложението, без да променяте код или конфигурации, като по този начин увеличавате преносимостта на вашето приложение.
Можете да имате множество променливи на средата и dotenv файлове за различни сценарии, за да тествате как вашето приложение работи при различни параметри или условия.