
REST API 설계
REST 원칙, 버전 관리, 페이지네이션, 필터링, HATEOAS, 상태 코드, OpenAPI/Swagger
20 면접 질문·
Mid-Level
1REST의 기본 원칙은 무엇입니까?
1
REST의 기본 원칙은 무엇입니까?
답변
REST는 고유한 URI를 통해 접근할 수 있는 리소스를 표현한다는 원칙에 기반합니다. 각 리소스(사용자, 제품, 주문)는 URI를 가지며 표준 HTTP 동사(GET, POST, PUT, DELETE)를 통해 조작할 수 있습니다. 이 리소스 중심 패러다임은 서버가 클라이언트 세션 상태를 저장하지 않는 확장 가능하고 느슨하게 결합된 아키텍처를 가능하게 합니다.
2리소스의 멱등한 전체 업데이트 작업에는 어떤 HTTP 메서드를 사용해야 합니까?
2
리소스의 멱등한 전체 업데이트 작업에는 어떤 HTTP 메서드를 사용해야 합니까?
답변
PUT는 멱등하며 리소스를 완전히 교체합니다. 동일한 데이터로 PUT를 여러 번 호출해도 한 번 호출한 것과 같은 결과가 나옵니다. 반면 POST는 멱등하지 않고(여러 리소스를 생성함), PATCH는 부분 업데이트를 수행하며, DELETE는 리소스를 삭제합니다. PUT의 멱등성은 네트워크 오류 시 재시도의 안전성을 보장합니다.
3새 리소스를 성공적으로 생성한 후 어떤 HTTP 코드를 반환해야 합니까?
3
새 리소스를 성공적으로 생성한 후 어떤 HTTP 코드를 반환해야 합니까?
답변
201 Created 코드는 리소스가 성공적으로 생성되었음을 나타냅니다. 새 리소스의 URI를 가리키는 Location 헤더가 함께 제공됩니다. 200 OK 코드는 생성에 너무 일반적이고, 204 No Content는 응답 본문이 없을 때 사용하며, 202 Accepted는 아직 완료되지 않은 비동기 처리를 나타냅니다.
4
REST API와 RPC API를 구별하는 주요 차이점은 무엇입니까?
5
REST에서 statelessness 원칙은 무엇을 의미합니까?
+17 면접 질문
기타 Go 면접 주제
Go 기초
Junior
25개 질문Go 데이터 구조
Junior
20개 질문Go 인터페이스
Junior
18개 질문에러 처리
Junior
20개 질문Goroutine 기초
Junior
20개 질문Channels
Junior
22개 질문Go Modules
Mid-Level
18개 질문HTTP 서버
Mid-Level
24개 질문HTTP 클라이언트
Mid-Level
18개 질문JSON 인코딩
Mid-Level
20개 질문Database/SQL
Mid-Level
22개 질문context 패키지
Mid-Level
20개 질문Testing
Mid-Level
22개 질문동시성 패턴
Mid-Level
24개 질문동기화 프리미티브
Mid-Level
22개 질문Go 웹 프레임워크
Mid-Level
20개 질문gRPC
Mid-Level
22개 질문Reflection
Senior
20개 질문메모리 관리
Senior
24개 질문성능 최적화
Senior
22개 질문Generics
Senior
20개 질문Go Design Patterns
Senior
24개 질문Microservices
Senior
24개 질문보안 및 인증
Senior
24개 질문Docker & Containerization
Senior
20개 질문Kubernetes Basics
Senior
22개 질문고급 Go
Senior
20개 질문CLI 개발
Senior
20개 질문