logo

Вступ до REST API

Р епрезентаційний С Тейт Т ransfer (REST) ​​— це архітектурний стиль, який визначає набір обмежень для створення веб-служб. REST API це простий і гнучкий спосіб доступу до веб-служб без будь-якої обробки.

REST API



Технології REST зазвичай віддають перевагу перед більш надійною технологією простого протоколу доступу до об’єктів (SOAP), оскільки REST використовує меншу пропускну здатність, проста та гнучка, що робить її більш придатною для використання в Інтернеті. Він використовується для отримання або надання певної інформації з веб-служби. Уся комунікація через REST API використовує лише запит HTTP.

Працює: Запит надсилається від клієнта до сервера у формі веб-URL як запит HTTP GET, POST, PUT або DELETE. Після цього відповідь повертається з сервера у вигляді ресурсу, який може бути чим завгодно, як HTML, XML, зображення або JSON. Але зараз JSON є найпопулярнішим форматом, який використовується у веб-службах.

Майстерність API REST Навчіться інтегрувати популярні та практичні API Python REST у веб-програми Django за допомогою інтерактивного курсу навичок Educative Станьте інтегратором API на основі Python. Зареєструйтеся на Educative.io за допомогою коду ГІКИ10 щоб заощадити 10% на вашій підписці.



в HTTP є п’ять методів, які зазвичай використовуються в архітектурі на основі REST, тобто POST, GET, PUT, PATCH і DELETE. Вони відповідають операціям створення, читання, оновлення та видалення (або CRUD) відповідно. Існують інші методи, які використовуються рідше, наприклад OPTIONS і HEAD.

  • ОТРИМАЙТЕ: Метод HTTP GET використовується для читати (або отримати) представлення ресурсу. У безпечному шляху GET повертає представлення в XML або JSON і код відповіді HTTP 200 (OK). У разі помилки він найчастіше повертає 404 (НЕ ЗНАЙДЕНО) або 400 (НЕВІДПОВІДНИЙ ЗАПИТ).
  • ПОСТ: Дієслово POST найчастіше використовується для створити нові ресурси. Зокрема, він використовується для створення підпорядкованих ресурсів. Тобто підпорядкований якомусь іншому (наприклад, материнському) ресурсу. Після успішного створення поверніть статус HTTP 201, повертаючи заголовок Location із посиланням на щойно створений ресурс із статусом HTTP 201.

ПРИМІТКА: POST не є ані безпечним, ані ідемпотентним.



  • ПОСТАВИТИ: Використовується для оновлення можливості. Однак PUT також можна використовувати створити ресурс у випадку, коли ідентифікатор ресурсу вибирає клієнт, а не сервер. Іншими словами, якщо PUT відноситься до URI, який містить значення ідентифікатора неіснуючого ресурсу. Після успішного оновлення поверніть 200 (або 204, якщо не повертається вміст у тілі) з PUT. Якщо для створення використовується PUT, поверніть статус HTTP 201 після успішного створення. Операція PUT небезпечна, але вона ідемпотентна.
  • ПАТЧ: Це звикло змінювати можливості. Запит PATCH має містити лише зміни до ресурсу, а не весь ресурс. Це нагадує PUT, але тіло містить набір інструкцій, що описують, як потрібно змінити ресурс, який зараз знаходиться на сервері, щоб отримати нову версію. Це означає, що тіло PATCH має бути не просто модифікованою частиною ресурсу, а певною мовою виправлень, наприклад JSON Patch або XML Patch. PATCH не є ані безпечним, ані ідемпотентним.
  • ВИДАЛИТИ: Це звикло видалити ресурс, ідентифікований URI. Після успішного видалення поверніть статус HTTP 200 (ОК) разом із тілом відповіді.

Ідемпотенція: Ідемпотентний метод HTTP — це метод HTTP, який можна викликати багато разів без різних результатів. Не має значення, викликається метод лише один раз чи десять разів. Результат повинен бути таким же. Знову ж таки, це стосується лише результату, а не самого ресурсу.

приклад:

C

скільки клавіш має клавіатура




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.

  • ОТРИМАЙТЕ: Прохання до всіх студентів.
запит
GET:/api/students
  • ПОСТ: Запит на розміщення/створення/внесення даних

запит

POST:/api/students

{ім'я: Радж}

  • ПОСТАВИТИ або ПАТЧИТИ: Запит на оновлення даних за id=1

запит

PUT або PATCH:/api/students/1

{ім'я: Радж}

  • ВИДАЛИТИ: Запит на видалення даних id=1
запит
ВИДАЛИТИ:/api/students/1

Веб-сервіси RESTful дуже популярні, оскільки вони невеликі, добре масштабовані та зручні в обслуговуванні, а також дуже часто використовуються для створення API для веб-додатків.