웹 크롤링 하면서 정보를 요청하고 받는 과정을 개발자들끼리의 약속
HTTP 를 사용하여 통신중 더 체계적인 관리를 위한 통일된 메서드
HTTP 를 사용하는 통신에서 클라이언트가 서버에서 요청할때 사용하는 메서드
URI 를 통해 자원(리소스=URL) 지정
HTTP 메서드 : 자원에 대한 행위(HTTP Method) 표현
여기서 잠깐!
URI 는 특정 리소스를 식별하는 통합 자원 식별자이다.
URL 은 웹 주소라 하며, 리소스가 어디 있는지 알려주기 위한 규약이다.
프로그램 사이를 연결하는 매개체
CREATE (생성, POST)
READ (조회, GET)
UPDATE (수정, PUT)
DELETE (삭제, DELETE)
자원은 객체
(이름을 지닐 수 있는 모든 정보 개념적 대상)
URI 를 통해 자원 식별
(=> "/user/1" 라는 URI 식별자)
리소스 + 메서드 + 메시지
Alex인 사용자를 생성한다.
{"Alex" 는 리소스}
{"생성한다" 는 메서드}
{"Alex인 사용자를" 은 메시지}
HTTP POST , http://myweb/users/
{
"users": {
"name":"terry"
}
}
=> HTTP POST 는 메서드
=> URL 이 리소스
=> 사용자에 대한 내용 은 메시지
(장)
HTTP 프로토콜의 인프라를 그대로 사용하기 때문에 별도의 인프라 구축 필요 X
모든 플랫폼에서 사용 가능
의도를 쉽게 파악 가능
서버와 클라이언트의 역할 명확
서비스 디자인에서 생길 문제를 최소화
(단)
표준 존재 X
사용 가능한 메서드 4가지 밖에 없다
구형 브라우저가 아직 제대로 지원 X
pip install djangorestframework
django_app/settings.py 에서
INSTALLED_APPS = [
...
'rest_framework',
...
]
cmd 에서 CRUD
curl -X GET http:/127.0.0.1:8000/모델명/?format=json
curl -X POST -H http://127.0.0.1:8000/모델명/{"id":0120,"name":"Alex"}
....