logo

REST API 소개

아르 자형 표현적인 에스 테이트 ransfer(REST)는 웹 서비스 생성에 사용할 제약 조건 집합을 정의하는 아키텍처 스타일입니다. REST API 아무런 처리 없이 간단하고 유연한 방식으로 웹 서비스에 액세스하는 방법입니다.

REST API



REST 기술은 일반적으로 보다 강력한 SOAP(Simple Object Access Protocol) 기술보다 선호됩니다. 왜냐하면 REST는 더 적은 대역폭을 사용하고 단순하며 유연하여 인터넷 사용에 더 적합하기 때문입니다. 웹 서비스에서 일부 정보를 가져오거나 제공하는 데 사용됩니다. REST API를 통해 수행되는 모든 통신은 HTTP 요청만 사용합니다.

일하고 있는: 요청은 HTTP GET, POST, PUT 또는 DELETE 요청과 같은 웹 URL 형식으로 클라이언트에서 서버로 전송됩니다. 그 후 HTML, XML, 이미지 또는 JSON과 같은 리소스 형태로 서버에서 응답이 반환됩니다. 그러나 이제 JSON은 웹 서비스에서 가장 널리 사용되는 형식입니다.

REST API 숙달 구축 Django 웹 애플리케이션에서 인기 있고 실용적인 Python REST API를 Educative의 대화형 기술 경로와 통합하는 방법을 알아보세요. Python 기반 API 통합자가 되십시오. 코드를 사용하여 Educative.io에 가입하세요 긱스10 구독료를 10% 절약하려면



~ 안에 HTTP REST 기반 아키텍처에서 일반적으로 사용되는 다섯 가지 방법(POST, GET, PUT, PATCH 및 DELETE)이 있습니다. 이는 각각 생성, 읽기, 업데이트 및 삭제(또는 CRUD) 작업에 해당합니다. OPTIONS 및 HEAD와 같이 덜 자주 사용되는 다른 방법이 있습니다.

  • 얻다: HTTP GET 메소드는 다음과 같이 사용됩니다. 읽다 (또는 검색) 리소스의 표현. 안전한 경로에서 GET은 XML 또는 JSON의 표현과 200(OK)의 HTTP 응답 코드를 반환합니다. 오류가 발생하면 404(찾을 수 없음) 또는 400(잘못된 요청)을 반환하는 경우가 가장 많습니다.
  • 우편: POST 동사는 다음과 같이 가장 자주 사용됩니다. 만들다 새로운 자원. 특히 하위 리소스를 생성하는 데 사용됩니다. 즉, 다른(예: 상위) 리소스에 종속됩니다. 성공적으로 생성되면 HTTP 상태 201을 반환하고, 201 HTTP 상태로 새로 생성된 리소스에 대한 링크가 포함된 Location 헤더를 반환합니다.

메모: POST는 안전하지도 멱등성도 아닙니다.

  • 놓다: 그것은에 사용됩니다 업데이트 중 능력. 그러나 PUT을 사용하여 다음을 수행할 수도 있습니다. 만들다 서버 대신 클라이언트가 리소스 ID를 선택한 경우의 리소스입니다. 즉, 존재하지 않는 리소스 ID 값을 포함하는 URI에 대한 PUT인 경우입니다. 업데이트가 성공하면 PUT에서 200(또는 본문의 콘텐츠를 반환하지 않는 경우 204)을 반환합니다. 생성에 PUT을 사용하는 경우 생성이 성공하면 HTTP 상태 201을 반환합니다. PUT은 안전한 작업은 아니지만 멱등성을 갖습니다.
  • 반점: 그것은 익숙하다 수정하다 능력. PATCH 요청에는 전체 리소스가 아닌 리소스에 대한 변경 사항만 포함하면 됩니다. 이는 PUT와 유사하지만 본문에는 현재 서버에 있는 리소스를 수정하여 새 버전을 생성하는 방법을 설명하는 일련의 지침이 포함되어 있습니다. 이는 PATCH 본문이 리소스의 수정된 부분이 아니라 JSON 패치 또는 XML 패치와 같은 일종의 패치 언어여야 함을 의미합니다. PATCH는 안전하지도 멱등성도 아닙니다.
  • 삭제: 그것은 익숙하다 삭제 URI로 식별되는 리소스입니다. 삭제에 성공하면 응답 본문과 함께 HTTP 상태 200(정상)을 반환합니다.

멱등성: 멱등성 HTTP 메서드는 다른 결과 없이 여러 번 호출될 수 있는 HTTP 메서드입니다. 메소드가 한 번만 호출되는지, 아니면 10번 이상 호출되는지는 중요하지 않습니다. 결과는 동일해야 합니다. 다시 말하지만 이는 리소스 자체가 아닌 결과에만 적용됩니다.

예:

굵은 글씨용 CSS




1. a = 4>// It is Idempotence, as final value(a = 4)> >// would not change after executing it multiple> >// times.> 2. a++>// It is not Idempotence because the final value> >// will depend upon the number of times the> >// statement is executed.>

>

>

요청과 응답

이제 다양한 요청과 응답이 어떻게 작동하는지 살펴보겠습니다. HTTP 행동 양식. 우리가 API( https://www.techcodeview.com ) gfg의 모든 학생 데이터에 대해.

  • 얻다: 모든 학생을 위한 요청입니다.
요구
가져오기:/api/학생
  • 우편: 데이터 게시/생성/삽입 요청

요구

게시:/api/학생

{이름:라지}

  • 넣거나 패치: ID=1의 데이터 업데이트 요청

요구

PUT 또는 패치:/api/students/1

{이름:라지}

  • 삭제: id=1 데이터 삭제 요청
요구
삭제:/api/students/1

RESTful 웹 서비스는 가볍고 확장성이 뛰어나며 유지 관리가 용이하고 웹 기반 애플리케이션용 API를 만드는 데 매우 일반적으로 사용되기 때문에 매우 인기가 있습니다.