
학교 동아리 페스티벌에 쓰일 웹 벡엔드를 개발하는 기회가 생겨서 관심이 생긴 Go언어로 벡엔드를 개발하고 싶었다.이 시리즈의 글은 이 프로젝트를 진행하면서 배운 것들을 기록한다.Gin은 유연한 구조를 지원한다.그래서 소프트웨어의 확장성과 유연성을 고려하기 위해서는 좋은

요청-응답의 사이에 있어서 미들웨어라고 불린다.미들웨어는 요청-응답 사이클 사이에서 추가적인 기능을 부여할 수 있고, 본 핸들러로 넘어가기 전에 전처리 과정을 거칠 수도 있다.요청문을 수정할 수도 있고, 필터링하는 기능을 제공할 수도 있다.middleware-in-vi
라우팅이란, 클라이언트의 요청을 특정한 핸들러 함수로 연결해주는 역할을 한다.클라이언트가 HTTP 요청을 보내면, 서버가 해당하는 URL에 맞는 미들웨어들과 핸들러를 실행시켜준다.URL(Uniform Resource Locator: 자원 위치 지정자)은 리소스의 위치를

환경변수란? 환경변수(environment variable)은 환경에 따라 다르게 설정되어야 하는 변수들에 대한 설정을 할 수 있다. 예를 들면, 개발자의 로컬 환경과, 실제 배포 서버에서는 다르게 설정되어야 하는 값들이 있겠다. (로컬 db주소, 실제 db주소 등..
ORM, Object-Relational Mapping은 객체 지향 프로그래밍 언어에서 관계형 데이터베이스와 매핑하는 것을 의미한다.ORM을 이용하면 데이터베이스와의 사용이 더 쉬워지고, SQL injection과 같은 공격에도 안전하다.객체 지향적인 프로그래밍으로 데

Authentication(인증)은 사용자가 누구인지를 확인하는 과정이다.즉, 당신이 누구인가?가 중요하다.보통 DB에서 아이디(이메일), 비밀번호를 조회하여 있는 사람이 맞는지 확인하는 식으로 이루어진다.Authorization(인가)는 인증받은 사용자가 특정 리소스
Gin 애플리케이션에서 사용자가 파일을 업로드하면, 서버가 AWS S3업로드를 하도록 설정해보자. AWS S3 버킷 만들기 awscreatebucket [Amazon S3] - [버킷] - [버킷 만들기]를 누른다. s3_create-bucket-1 버킷 이름을

CORS(Cross-Origin-Resource Sharing, 교차 출처 리소스 공유)는 서버에게 다른 오리진으로부터의 요청을 승인하게 하는 보안 매커니즘이다.여기서 오리진이란, URL에서 프로토콜(스킴), 도메인(주소), 포트의 결합을 말한다.보안상의 이유로, 서로

애플리케이션을 개발하는 작업은, 시간이 오래 걸리고 힘들다. 빌드, 테스트, 배포와 같은 작업은 개발이 아니면서도 매우 힘들고 시간이 드는데,CI/CD 파이프라인을 통해서 이러한 프로세스를 자동화하여 개발자가 개발에만 집중할 수 있도록 해준다.또한, 빌드, 테스트, 배
Lint는 보풀이란 뜻으로, 보풀이 옷에 많으면 옷의 품질이 떨어져보이듯, 지저분한 코드는 소프트웨어의 품질을 떨어지게 만든다.이러한 Lint들을 제거하는 도구를 Linter라고 하는데, go에서 공식적으로 지원하는 go를 위한 linter인 golint를 써보고자 한