Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- Oracle
- javascript
- mysql
- mybatis
- 플라스크
- BOJ
- 데이터베이스
- flask
- 자바
- 오라클
- 에러
- database
- 웹프로그래밍
- java
- 스프링
- TIL
- 파이썬
- 링크
- 백준
- eclipse
- PYTHON
- 알고리즘
- rdbms
- sql
- spring
- jQuery
- db
- 이클립스
- 자바스크립트
- Git
Archives
- Today
- Total
기록과 정리의 공간
[웹프로그래밍] REST API란? 본문
1. REST란?
- REpresentational State Transfer의 약자
- 2000년도에 HTTP의 주요 저자인 로이 필딩이 웹(HTTP) 설계의 우수성에 비해 제대로 사용되어지지 못하는 모습에 안타까워하며 웹의 장점을 최대한 활용할 수 있는 아키텍처로써 REST를 발표함.
- 자원(resource)의 표현(representation)에 의한 상태 전달. HTTP URI를 통해 자원을 명시하고, HTTP Method를 통해 자원에 대한 CRUD Operation 적용
2. REST의 구성
- 자원(RESOURCE) - URI
- 행위(Verb) - HTTP Method
- Create : 생성 (POST)
- Read : 조회 (GET)
- Update : 수정 (PUT)
- Delete : 삭제 (DELETE)
- 표현(Representations)
3. REST API란?
- REST를 기반으로 서비스 API를 구현한 것.
- 마이크로 서비스, OpenAPI등에서 많이 사용 됨.
4. REST API 디자인 가이드
- 설계 시 가장 중요한 항목은 아래 2가지로 요약할 수 있다. 아래 2가지는 반드시 기억해두자!!!
- 1. URI는 정보의 자원을 표현해야 한다.
- 2. 자원에 대한 행위는 HTTP Method(GET, POST, PUT, DELETE)로 표현한다.
5. HTTPie (툴)
- 공식 사이트
- CLI HTTP 클라이언트이다. HTTP개발이나 디버깅 용도로 사용된다.
- REST API를 만들 때 유용하게 사용될 수 있다.
- 사용법
- HTTP메서드를 명시하지 않는다면 GET이 기본값이 된다.
- 두 번째 명령 처럼 -v를 쓴다면 송신 HTTP프로토콜 데이터 또한 함께 출력 된다.
http HTTP메서드 URI
http -v URI
- 맨 상단 참고 부분에 링크를 걸어둔 강의를 듣고 REST API와 관련하여 알게된 것들을 일부 적어본다.
- 주소창에 웹 주소를 입력하면 웹 페이지 자체를 가져올 수도 있지만, 데이터를 가져올 수도 있다. 데이터를 가져오기 위해 HTTP프로토콜을 사용한다면, 그것은 REST API라고 할 수 있다. 즉, 요청에 대한 결과값을 리턴 받을 때 HTML페이지가 아니라 데이터를 리턴 받기 위해 REST API를 쓴다.
- REST API를 통해 데이터를 가져와서 프론트엔드에서 웹 페이지를 구성하여 보여주는 경우가 많다고 한다.
- 즉, 백엔드에서 REST API를 통해 프론트엔드와 통신하며 데이터를 제공해주면 이를 프론트엔드에서 처리하여 웹 페이지로 보여준다.
- REST API를 구현할 때, 특정한 URI를 요청하면 JSON형식으로 데이터를 리턴(응답)하도록 구현하면 된다.
- 최근의 트렌드가 데이터를 JSON포맷으로 응답을 보내는 것이라고 한다. 따라서, JSON을 잘 다룰 수 있어야 한다.
'웹 프로그래밍' 카테고리의 다른 글
[웹프로그래밍] HTTP 요청 메서드 (0) | 2020.09.06 |
---|
Comments