3.4 KiB
3.4 KiB
id, title, challengeType, forumTopicId, localeTitle
id | title | challengeType | forumTopicId | localeTitle |
---|---|---|---|---|
587d7fb1367417b2b2512bf2 | Use the .env File | 2 | 301521 | Используйте файл .env |
Description
.env
- это скрытый файл, который используется для передачи переменных среды вашему приложению. Этот файл является секретным, никто, кроме вас, не может получить к нему доступ, и его можно использовать для хранения данных, которые вы хотите сохранить в секрете или скрыть. Например, вы можете хранить ключи API от внешних служб или URI вашей базы данных. Вы также можете использовать его для хранения параметров конфигурации. Установив параметры конфигурации, вы можете изменить поведение вашего приложения без необходимости переписывать некоторый код.
Переменные среды доступны из приложения как process.env.VAR_NAME
. Объект process.env
является глобальным объектом Node, а переменные передаются в виде строк. По соглашению имена переменных должны быть в верхнем регистре, а слова разделены подчеркиванием. .env
- это файл оболочки, поэтому вам не нужно заключать .env
в кавычки имена или значения. Также важно отметить, что не должно быть пробела вокруг знака равенства, когда вы присваиваете значения своим переменным, например, VAR_NAME=value
. Обычно помещают каждое определение переменной в отдельную строку.
Задание
Добавьте переменную окружения в качестве опции конфигурации. Сохраните переменную MESSAGE_STYLE=uppercase
.env
файле .env
. Затем сообщите обработчику маршрута GET /json
который вы создали в последнем вызове, чтобы преобразовать сообщение объекта ответа в верхний регистр, если process.env.MESSAGE_STYLE
равен process.env.MESSAGE_STYLE
uppercase
. Объектом ответа должно стать {"message": "HELLO JSON"}
.
Тесты
tests:
- text: The response of the endpoint <code>/json</code> should change according to the environment variable <code>MESSAGE_STYLE</code>
testString: getUserInput => $.get(getUserInput('url') + '/_api/use-env-vars').then(data => { assert.isTrue(data.passed, 'The response of "/json" does not change according to MESSAGE_STYLE'); }, xhr => { throw new Error(xhr.responseText); })