본문 바로가기

728x90
반응형

Golang/etc

(13)
Apple 로그인 JWT, JWK 애플로그인 구현을 위해서 꼭 알아야하는 jwt 굳이 애플로그인이 아니어도 필요하기 때문에 먼저 개념을 정리하고 apple 로그인 구현까지 포스팅해보려 한다. JWT (JSON Web Token) - jwt는 header, playload, signature 3 부분으로 이루어져있다. - 이를 base64 encoding 한 후 concat, 즉 문자열을 합친 것이 jwt이다. - 토큰에 포함된 내용들은 암호화 되어있지 않기 때문에 누구나 확인 가능하다. - signature를 이용하여 해당 토큰이 실제로 원래 발급자가 발급했던 유효한 토큰인지 검증 할 수 있다. - signature 생성을 위한 알고리즘은 발급시에 선택가능하다 (RS256, ES256, HS256 등) https://jwt.io JWT...
golang .env 파일 환경변수 셋팅 .env 파일로 환경변수를 지정해주는 방법 일단 main이 있는 package에 직접 .env 파일을 만들어준다. 나의 경우에는 terminal에서 만들어줬다. touch .env vi .env touch로 .env 파일을 생성하고 vi로 편집해서 환경변수를 설정해준다. 예를들어 linux 계정 이름과 비번을 저장하고 싶다고 가정해보자. .env 파일의 내용은 아래와 같이 작성할 수 있다. LINUX_NAME=csohb LINUX_PWD=1234 이 형식이 정해져있는건 아니다 그냥 맘대로 지정해도 된다. 여튼 이렇게 쓴 .env 파일을 사용하기 위해서는 env 파일을 읽어오는 라이브러리를 사용해야한다. err := godotenv.Load(envFile) if err != nil { panic(err) ..
go init() 프로젝트 하면서 배우게 된 사항들은 까먹지 않고 다시 정리하는 습관을 들이려한다. 첫번째. init() 함수 - main을 호출함과 동시에 무조건 호출되는 함수 main에서 따로 선언하지 않아도 알아서 호출된다. func init() { fmt.Println("init func called..") } func main() { fmt.Println("main func called..") } 분명 main에서 따로 호출하지 않았지만 실행되는 동시에 함수가 호출된 것을 볼 수 있다. 그럼 이 함수를 어디에 사용하는가. 내가 하고 있는 프로젝트에서는 config파일 읽어올때 주로 쓴다. func init() { if len(os.Args) == 2 { configFile = os.Args[1] } else { ..

728x90
반응형