모든 백엔드의 기능은 사실상 API 라는 표현을 쓰지않지만 간단하게 말하면 API로 구축되어 있다고 말할 수 있다.
API란 서버와 클라이언트를 연결해서, 특정 기능을 수행해주는 것
python 에서는 requests.get(. . .) => get( 가져온다 )
여기서 get은 HTTP 메소드 이름을 말합니다. (.get, .post, .patch, .put, .delete)
- GET ( requests.get )
- POST ( requests.post )
- HEAD, OPTIONS, PUT, PATCH, DELETE . . .
GET
HTTP Method GET 방식은 URL Parameter를 통해서 정보를 넘기는 방식이다.
예를 들어 아래의 네이버 검색을 살펴보겠습니다.
https://search.naver.com/search.naver?sm=top_hty&fbm=0&ie=utf8&query=배고파
query = 배고파
where = nexearch
sm = top_hty
POST
HTTP Method POST 방식은 HTTP Body 안에 정보를 담아서 보내는 방식이다. (암호화가 된다는 의미는 아니다)
POST는 주로 로그인이나 회원가입 할 때 사용한다.
아래 사진은 제가 만든 사이트에서 확인해본 것 입니다.

login 페이지에서 Request Method가 POST인 것을 확인할 수 있습니다.
그리고 위에서 말한 암호화가 된다는 의미가 아니라는 것은

위 사진처럼 제가 입력한 아이디와 패스워드를 확인해볼 수 있습니다.
마지막으로 정리해보겠습니다.
GET -> 가져온다 -> 조회, 검색 ( 데이터의 상태가 바뀌지 않으면서, 정보를 가져올 때 )
POST -> 추가(생성) -> 웹 상의 리소스가 생길 때 ( Created )
PUT/PATCH -> 데이터가 업데이트 될 때 ( Update )
DELETE -> 데이터 삭제될 때 ( Destroy, Delete )
이것들을 CRUD라고 한다.
API에 요청할 때, status_code, body 가 어떤 식으로 구현될지 약속들이 나오게 된다.
POST -> Successful(201), Faild
GET -> Successful(200), Faild
Patch -> Successful, Faild
Delete -> Successful, Faild
HTTP Method -> Data -> Status_code
흐름대로 생각하면 좋을 것 같다.
'Language > Python' 카테고리의 다른 글
| Github .gitignore 언어별 기본 값 (0) | 2019.12.31 |
|---|---|
| pip install Pillow 에러해결 (0) | 2019.12.22 |
| f-string: expressions nested too deeply 해결법 (2) | 2019.11.28 |
| AWS, Docker (0) | 2019.11.22 |
| 구글 트렌드(실시간 인기 급상승 검색어) selenium 삽질일기 (0) | 2019.09.23 |
댓글