호기심 많은 개발자 🚀
REST 본문
Representational state Transfer
웹 서비스
- 정적 콘텐츠 사용 > resources
- hello.html
- hello.css
- hello.png
- 동적 콘텐츠 사용
- 서버 페이지(Servlet, JSP)
- 서버측에서 동작 후 동작으로 생성되는 페이지
- 주로 서버측의 템플릿 엔진(JSP)을 사용해서 페이지를 동적 생성한다.
- REST API 제공
- REST 방식의 서비스를 제공
REST API 설계 규칙
- URL에서 자원을 표시한다.
- URL에 동사를 표시하지 않는다.
- HTTP Method를 사용해서 행동을 표시한다.
- 2번에서 동사를 사용하지 않는다. 대신HTTP Method를 사용해서 표현한다.
a. GET 리소스 요청
b. POST 데이터 전달 + 서버측 생성
c. PUT 데이터 전달 + 수정(전체 수정)
d. PATCH 데이터 전달 + 수정(정보 수정)
e. DELETE 데이터 삭제
- 2번에서 동사를 사용하지 않는다. 대신HTTP Method를 사용해서 표현한다.
- URI + HTTP Method = 완성
- 구분자는'/'를 사용한다.
- URI의 마지막에 '/'를 적지 않는다.
- '-' 사용 가능하다.
- '_' 사용하지 않는다.(가독성)
- 파일 확장자를 사용하지 않는다.
- REST API의 반환값은 순수 데이터만 반환한다.
- 기존방식 : 반환 데이터 > 페이지 소스
- REST 방식 : 반환 데이터 > 순수 데이터 (= Ajax의 결과와 거의 동일)
URL 작성
기존 방식
- GET http://localhost/member/list.do 목록보기
- POST http://localhost/member/add.do 추가하기
- POST http://localhost/member/edit.do?seq=1 수정하기
- POST http://localhost/member/del.do?seq=1 삭제하기
- GET http://localhost/member/list.do?w = 검색어 검색하기
REST
- GET http://localhost/member 목록보기
- POST http://localhost/member 추가하기
- PUT http://localhost/member/1 수정하기
- DELETE http://localhost/member/1 삭제하기
- GET http://localhost/member/1 검색하기
'WEB' 카테고리의 다른 글
| Ajax , Asynchronous JavaScript ans Xml (0) | 2022.01.21 |
|---|---|
| 게시판 만들기 (2022-01-12) 설계 (0) | 2022.01.12 |
| EL , Expression Language (0) | 2022.01.11 |
Comments