반응형
개요
프로젝트를 만들다 보면 노출하면 안 되는 값이 있습니다. (ex : aws키, db 접속 정보, api 키 등등)
그렇기에 대부분의 프레임워크에서는 .env, wp-config.php, setting.xml 등의 설정파일을 제공해 줍니다.
GO에서는 다음 패키지를 사용하면 아주 쉽게 설정 파일을 만들 수 있습니다.
https://github.com/joho/godotenv
코드
프로젝트에서 패키지를 다운로드한 다음
go get github.com/joho/godotenv
바로 .env 파일을 다음처럼 만들어줍시다.
내용은 다음과 같이 적어줍시다, 값은 key=value 형태를 유지하시면 됩니다.
DBUSER=root
DBPASS=secret
DBNAME=chat_app
main.go도 다음처럼 작성하고
package main
import (
"fmt"
"github.com/joho/godotenv"
"log"
"os"
)
func main() {
err := godotenv.Load(".env")
if err != nil {
log.Fatal(".env 파일을 찾을 수 없습니다.")
}
dbUser := os.Getenv("DBUSER")
dbPass := os.Getenv("DBPASS")
dbName := os.Getenv("DBNAME")
fmt.Printf("DBUSER=%s\nDBPASS=%s\nDBNNAME=%s", dbUser, dbPass, dbName)
}
프로젝트를 실행하면 다음과 같이 정보가 출력되는 걸 확인할 수 있습니다
만약 파일명을 바꾸고 싶으면 godotenv.Load 부분과 파일명을 바꾸시면 됩니다.
반응형
'Go Lang > Study' 카테고리의 다른 글
[GoLang] 실수 오차 없애기 (1) | 2023.10.28 |
---|---|
[GoLang] Go언어란? (1) | 2023.10.24 |
[GoLang] xls 파일을 xlsx 파일로 바꿔주자 (0) | 2023.09.17 |
[GoLang] 자료형을 초과한 큰 수를 계산해보자 (0) | 2023.09.01 |
[GoLang] 정규식으로 URL 분석기 만들기 (0) | 2023.08.30 |