Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- CS지식
- 스프링부트
- 플러터
- springboot
- programmers
- 자바스크립트
- Java
- Flutter
- backjoon
- python
- 프로그래머스
- 백준
- 자료구조
- Spring Security
- 스프링
- CS
- 네트워크
- DB
- 데이터베이스
- 스프링 부트 쇼핑몰 프로젝트 with JPA
- postgresql
- Oracle
- baekjoon
- JPA
- spring
- 데이터
- 파이썬
- 시큐리티
- 자바
- 리눅스
Archives
- Today
- Total
Jin's Dev Story
[SpringBoot] REST API 본문
REST : 자원을 이름으로 구분하여 해당 자원의 상태를 주고받는 모든 것
API : 애플리케이션 프로그래밍 인터페이스
: 응용 프로그램이 서로 통신할 수 있도록 하는 일련의 규칙
REST API
컴퓨터와 컴퓨터, 서버와 클라이언트 등 다양한 애플리케이션 연결 구조에서 프로그래밍 인터페이스 규격에 맞춰 자원의 이름으로 구분하여 자원의 상태를 주고받는 행위
GET | 해당 리소스를 조회함(read) |
POST | 해당 URL를 요청하면 리소스를 생성(create) |
PUT | 해당 리소스 수정(update) |
DELETE | 해당 리소스 삭제(delete) |
REST 구성
- 자원(Resource) - URI
- 행위(Verb, Method) - HTTP Method(요청 방식) - GET, POST 등
- 표현(자원의 형태, Representations) - JSON, XML 등
REST API 기본 규칙
- URL는 정보의 자원을 표시해야 함
- 동사보다는 명사를, 대문자보다는 소문자 사용
- 복수 명사 사용
- 확장자를 사용하지 않음
- 밑줄 X, 하이픈 O
- 자원에 대한 행위는 HTTP Method로 표현
- HTTP Method(GET, POST, PUT, DELETE 등)나 동사표현이 URI에 들어가면 안됨
EX) 잘못된 설계
전체 조회 @GetMapping(/member/get)
특정 조회 @GetMapping(/member/get/{id})
등록 @PostMapping(/member/get/create)
삭제 @GetMapping(/member/get/delete/{id})
수정 @PostMapping(/member/update/{id})
EX) 올바른 설계
전체 조회 @GetMapping(/member)
특정 조회 @GetMapping(/member/{id})
등록 @PostMapping(/member)
삭제 @DeleteMapping(/member/{id})
수정 @PutMapping(/member/{id})
REST API 세부규칙
- 슬래시(/)는 계층 관계를 나타냄
- URI의 마지막엔 슬래시 포함하지 않음
- 언더바 사용 X, 하이픈 사용 O
- 소문자 사용
'Web & Android > SpringBoot' 카테고리의 다른 글
[SpringBoot] Validation (0) | 2023.10.13 |
---|---|
[SpringBoot] HTTP form에서 put, delete 사용법 (0) | 2023.10.13 |
[SpringBoot] Bean (0) | 2023.10.13 |
[SpringBoot] 스케줄링 (1) | 2023.10.13 |
[SpringBoot] Google 이메일 인증 (0) | 2023.09.12 |