.env KEY=VALUE 단순한 키-값 쌍 형태로 구성, 그외 배열이나 객체 설정
.env 설정에 a=b 이런 설정이 아니라 array 나 object 설정은 안되나요?

1 답변

0 투표

.env 파일은 기본적으로 단순한 키-값 쌍 형태로 구성되며, 직접적으로 배열이나 객체를 정의할 수 있는 구문을 지원하지 않습니다. 각 키와 값은 KEY=VALUE 형식을 따릅니다. 그러나 배열이나 객체와 같은 복잡한 데이터 구조를 환경 변수로 사용하고 싶은 경우, 문자열로 직렬화하여 저장한 후 애플리케이션에서 이를 다시 역직렬화하는 방법을 사용할 수 있습니다.

배열을 .env에 저장하는 방법

배열을 .env 파일에 저장하려면, 배열 요소를 쉼표로 구분된 문자열로 변환하여 저장합니다. 예를 들어, ["value1", "value2", "value3"]라는 배열이 있다면, 이를 VALUE_LIST=value1,value2,value3 형태로 저장할 수 있습니다.

.env 파일 예시:

MY_ARRAY=value1,value2,value3

애플리케이션에서 이 값을 사용할 때는 문자열을 분할하여 다시 배열로 변환합니다.

Node.js 예시:

require('dotenv').config();

// 환경 변수에서 문자열을 가져온 후 쉼표를 기준으로 분할하여 배열 생성
const myArray = process.env.MY_ARRAY.split(',');

console.log(myArray); // ["value1", "value2", "value3"]

객체를 .env에 저장하는 방법

객체를 .env 파일에 저장하는 경우, JSON 형식으로 객체를 직렬화하여 문자열로 변환한 다음 저장합니다. 그리고 애플리케이션에서 사용할 때는 이 문자열을 JSON으로 파싱하여 객체로 다시 변환합니다.

.env 파일 예시:

MY_OBJECT={"key1":"value1","key2":"value2"}

Node.js 예시:

require('dotenv').config();

// 환경 변수에서 문자열을 가져온 후 JSON으로 파싱
const myObject = JSON.parse(process.env.MY_OBJECT);

console.log(myObject); // { key1: "value1", key2: "value2" }

주의사항

  • 환경 변수에 저장된 데이터를 파싱할 때는 오류 처리를 고려해야 합니다. 잘못된 형식의 문자열이 주어지면 JSON.parse() 함수가 예외를 발생시킬 수 있습니다.
  • .env 파일과 환경 변수는 주로 구성 데이터나 비밀번호와 같은 민감한 정보를 저장하는 데 사용됩니다. 복잡한 데이터 구조를 환경 변수로 저장하는 것은 이러한 용도에 비해 다소 부적합할 수 있으므로, 사용 사례를 신중하게 고려해야 합니다.
구로역 맛집 시흥동 맛집
이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.
add
...