HTTP?
HTTP = HyperText Transfer Protocol
클라이언트(웹 브라우저)와 서버간에 의사소통을 가능하게 해주는 request-response 프로토콜
HTTP Method | CRUD | OK | ERROR |
Get | Read | 200 | 404 (Not Found) 409 (Conflict) |
Post | Create | 200 | 404 (Not Found) |
Put | Update / Replace | 200 | 404 (Not Found) 405 (Method Not Allowed) |
Patch | Update / Modify | 200 | 404 (Not Found) 204 (No content) 405 (Method Not Allowed) |
Delete | Delete | 200 | 404 (Not Found) 405 (Method Not Allowed) |
1. Get : Read
주소창에 파라미터가 노출되고 주로 정보를 얻을 때 사용한다.
Request - URI에 의해 식별된 모든 정보를 검색하는 것을 의미한다.
2. Post : Create
주소 창에 파라미터가 노출 되지 않는다.
주소 창에 사용자의 요청 사항이 노출되지 않는다.
3. Put/ Patch : Update
: 주로 업데이트에 사용하는 메서드
BODY에 데이터가 있음 (=post)
4. Delete
get과 마찬가지로 주소에 파라미터가 들어가고
데이터 삭제 시 사용한다.
Rest
Representational State Transfer
: HTTP Method를 통해서 데이터를 처리하는 게 정의되어 있는 것.
CRUD를 통한 Resource 조작 시 사용한다.
리소스(HTTP URI)에 대한 행위를 HTTP Method, 즉 구조적으로 표현하는 방법이다.
Rest API
> Rest API 설계 가이드에 따라 API를 만들어내는 것을 의미한다.
왜 굳이 가이드를 따라서 만들어야하냐면,
해당 API를 보고도 이 API의 목적이 무엇인지 명확하게 드러내기 위해서이다.
'여니의 프로그래밍 study > Spring & Spring Boot' 카테고리의 다른 글
[스프링부트] 객체 지향 설계 SOLID 원칙 (0) | 2021.12.27 |
---|---|
[스프링부트] Spring의 역사, 생태계, Spring의 개념 (0) | 2021.12.27 |
[Error] 0 containers and 2 tests were Method or class mismatch (0) | 2021.09.07 |
[ERROR 22924] o.h.engine.jdbc.spi.SqlExceptionHelper : Field 'id' doesn't have a default value (0) | 2021.09.07 |
[에러] java: warning: source release 11 requires target release 11 (0) | 2021.09.06 |