web framework 역할과 종류 에서 Go에서 star별로 조사를 했다.
많은 WebFramework가 있지만 Gin
이 star가 가장많기 때문에 선택을 해본다.
gin github
gin-gonic 에 들어가서 다운로드 받고, 배울수 있다.
Gin?
Gin은 golang으로 작성된 HTTP web framework를 말하고, 성능이 빠르다는 장점이 있다.
Logger, Authorization, GZIP, DB와 연동해서 사용할 수 있다.
뭐 다 좋다고 하겠으니 일단 사용해보기로!
어떻게 시작?
무조건 개발은 해보면서 습득하는게 좋으니 gin examples가 있는곳을 살펴보기로한다. Gin으로 작성된 Awesome Project의 리스트도 확인이 가능하다.
Awesome Project에 보면 TF와 함께 개인 사진 저장소를 구현한 페이지 photoprism가 있는데 완성도가 훌륭하다. 데모페이지를 들어가보면 정말 이런걸 만들고 싶다라는 생각이 드는 페이지가 보인다.
Quick Start
quick start
를 하고 나면,
go get -u github.com/gin-gonic/gin
go get github.com/kardianos/govendor
설치를 govendor
가 없다고 나온다. command not found
그 이유는 govendor
의 환경변수를 지정하지 않아서 생기는 문제~
GOPATH
와 GOBIN
의 경로를 ~/.bashrc
에 지정해주자
export GOPATH=~/go
export GOBIN=$GOPATH/bin
export PATH=$PATH:$GOBIN
다음과 같이 ~/.bashrc
에 입력했다면 source ~/.bashrc
를 입력해서 적용하면govendor
를 입력할 수 있을것이다.
예제 코드를 입력하고 http://localhost:8080/ping
실행하면 pong
의 응답을 받는 예제이다.
Examples
git clone https://github.com/gin-gonic/examples.git
의 소스코드를 내려받고,https://gin-gonic.com/docs/examples/
에서 예제에 대한 설명이 확인 가능하다.
다음에는 예제에서 각각 어떤 내용을 배우는지에 대한 정리를 해볼까한다.
'Web 개발' 카테고리의 다른 글
Swagger UI 설치 (0) | 2020.03.07 |
---|---|
jsconfig.json에 include를 추가해 VS Code에서 자동완성 (0) | 2020.02.16 |
Go 언어 Web Framework 를 선택해보자, star가 가장 많은 웹프레임워크는? Echo, Gin, Chi? 당신의 선택은 무엇인가? (0) | 2019.08.31 |
Go 언어를 배워보자! (~72 끝까지 달려보자! 동시성(Concurrency)에 대한 내용) + 이후에 튜토리얼, 레퍼런스 등 참고하기 좋은 사이트 (0) | 2019.08.31 |
Go 언어를 배워보자! (53~ 부터 시작! 인터페이스! ~ 61까지) 점점 어려워 지는구나 + 뜬금없은 Go build 하고 실행하는 방법 (0) | 2019.08.31 |