- RESTful API
- REST API
- REST 아키텍처를 구현한 API
- HTTP 기반의 웹기술 구현
- REST ( Representational State Transfer )
- 웹상의 자원(데이터)를 자원의 이름으로 표현해서 자원의 상태(값,정보)를 주고 받는 행위
- HTTP URI를 통해 자원을 명시하고, HTTP Method를 통해 해당 자원에 대한 CRUD 처리를 적용한다.
- 기존의 방식
- GET http://localhost/board/list.do : 게시판 목록 페이지
- POST http://localhost/board/add.do : 글쓰기 페이지
- POST http://localhost/board/edit.do?seq=1 : 1번 seq에 해당하는 글 수정
- GET http://localhost/board/del.do?seq=1 :1번 seq 글 삭제
- GET http://localhost/board/list.do?word=검색어 :'검색어' 검색
- REST 방식
- GET http://localhost/board :목록
- POST http://localhost/board :글쓰기
- PUT http://localhost/board/:id :수정하기
- DELETE http://localhost/board/:id :삭제하기
- GET http://localhost/board/검색어 :검색하기
- REST API 설계 규칙1. URI에서 자원을 표시한다.3. HTTP Method를 사용해 행동을 표시한다. (Method를 통해 행동이 결정 )
5. 구분자 '/' 사용- http://localhost/board/ (x)
- http://localhost/board (o)
8. '_' 사용하지 않는다10. 반환하는 데이터는 주로 데이터만 반환한다(*****) - - HTML 소스 반환(x) > 페이지 반환 > 사용 범위 > 브라우저 한정
a. AJAX
b. OpenAPI > REST 방식으로 구현 : URL 명확 & 범용 포맷 반환값 (XML, JSON)
- - 순수 데이터 반환(o) > XML, JSON 반환 > 사용 범위 > 다양해짐(웹, 모바일, 기타 플랫폼.. )
- 9. 파일 확장자를 사용하지 않는다.
- 7. '-'을 사용가능
- 6. URI 끝에 '/'는 적지 않는다
- 4. URI + HTTP Method = 완성
- a. GET : 리소스 요청c. PUT : 데이터 수정 (전체 수정)e. DELETE : 데이터 삭제
- d. PATCH : 데이터 수정 (일부 수정) - 잘안쓴다
- b. POST : 데이터 전달 및 생성 (일방적으로 주는 메소드)
- 2. URI에 동사(행위)를 표시하지 않는다. (add,del,edit ...)
'프로그래밍' 카테고리의 다른 글
[이클립스,STS] git-receive-pack not permitted 에러 해결 (0) | 2021.08.15 |
---|