API 란 .
Application Programming Interface 의 약자로 , 응용제체나 프로그래밍 언어가 제공하는 기능을
제어하게 하는 인터페이스를 말한다.
클라이언트가 데이터베이스로 접근하는것에 관하여 중간자 역할을 수행한다.
그 중 흔히 Restful API 라는 방법으로 사용을 하는데,
Rest란 서버나 서비스에 존재하는 모든 자원(이미지, 영상등)에 고유한 URI를 부여하여 활용하는 것이다.
( 자원에 고유한 주소를 지정하는 방법)
Rest의 구성에는,
자원(Resource)
행위(Method)
표현(Message) 가 있으며,
자원은 http://naya.com/user 와 같은 형태의 URI(URL)이다.
행위는 클라이언트가 웹서버에게 요청하는 목적 및 그 종류를 알리는 수단으로 HTTP 메소드를 사용한다.
HTTP메소드 중 GET , POST , PUT , DELETE 가 대표적이다.
표현은 위의 그림처럼 서로간의 데이터를 주고 받는 형식으로 , JSON / XML 등이 있지만,
JSON이 대표적이다.
## URL 의 구성명칭은 아래와 같다.
## HTTP 메소드
HTTP 메소드는
GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS, CONNECT, TRACE 가 존재하고
사용법으로는
1. GET
- 클라이언트가 서버에 리소스를 요청할 때 사용 ( CRUD 에서 Read )
2. POST
- 클라이언트가 서버의 리소스를 새로 만들 때 사용 ( CRUD 에서 Create )
3. PUT
- 클라이언트가 서버의 리소스를 수정 할 때 사용 ( CRUD에서 Update : 전체 수정 )
4. PATCH
- 클라이언트가 서버의 리소스를 수정 할 때 사용 ( CRUD에서 Update : 일부 수정 )
5. DELETE
- 클라이언트가 서버의 리소스를 삭제 할 때 사용 ( CRUD에서 Delete )
6. HEAD
- 클라이언트가 서버의 정상 작동 여부를 확인 할 때 사용
7. OPTIONS
- 클라이언트가 서버에서 해당 URL이 어떤 메소드를 지원하는지 확인 할 때 사용
8. CONNECT
- 클라이언트가 프록시를 통하여 서버와 SSL 통신을 하고자 할 때 사용
9. TRACE
- 클라이언트와 서버간 통신 관리 및 디버깅을 할 때 사용
이다. 여기서 GET, POST PUT, DELETE를 가장 많이 사용한다.
## Message Format
클라이언트와 서버간에 요청(Request)과 응답(Response)을 위해서 JSON 문법을 기본으로 한다.
JSON 문법은 파이썬의 딕셔너리와 비슷하며, 오브젝트라고 한다.
응답을 받아올때는 HTTP Status codes 를 받을 수 있다.
( 상황에 따라 HTTP Status Codes가 다르다. )
위를 제외하고도 많은 HTTP Status Code가 있으니 , 필요시 검색하여 사용가능하다.
'IT 프로그래밍 관련 > API server ( Flask )' 카테고리의 다른 글
토큰을 통한 유저 인증 , 로그인,아웃관리 ( flask-jwt-extended ) (1) | 2021.04.08 |
---|---|
API개발 경로와 리소스 이해. (0) | 2021.04.08 |
API 서버 실제 구성 ( 데이터베이스 연결, API개발, 경로의 변수처리) (0) | 2021.04.08 |
JSON 형식 메세지 처리 (POSTMAN설치) (0) | 2021.04.07 |
Flask로 API서버 구성 ( flask 환경 설정, flask 기본문법 ) (0) | 2021.04.07 |
댓글