Підручник із веб-служб RESTful: що таке REST API із прикладом

Що таке веб-служби Restful?

Спокійні веб -служби це легкий, зручний і масштабований сервіс, побудований на архітектурі REST. Веб-служба Restful надає клієнту, що викликає, безпечний, уніфікований спосіб без збереження даних про API вашої програми. Клієнт, що викликає, може виконувати попередньо визначені операції за допомогою служби Restful. Основним протоколом для REST є HTTP. REST означає REpresentational State Transfer.

Ключові елементи RESTful

Веб-служби REST дійсно пройшли довгий шлях з часу свого створення. У 2002 році веб-консорціум випустив визначення веб-сервісів WSDL і SOAP. Це сформувало стандарт того, як реалізуються веб-сервіси.

У 2004 році веб-консорціум також випустив визначення додаткового стандарту під назвою RESTful. За останні пару років цей стандарт став досить популярним. І використовується багатьма популярними веб-сайтами в усьому світі, зокрема Facebook і Twitter.

REST — це спосіб доступу до ресурсів, які знаходяться в певному середовищі. Наприклад, у вас може бути сервер, на якому можуть зберігатися важливі документи, зображення чи відео. Усе це є прикладом ресурсів. Якщо клієнту, скажімо, веб-браузеру, потрібен будь-який із цих ресурсів, він має надіслати запит на сервер для доступу до цих ресурсів. Тепер служби REST визначають спосіб доступу до цих ресурсів.

Ключові елементи реалізації RESTful такі:

  1. Ресурси – Перший ключовий елемент – це сам ресурс. Припустімо, що веб-додаток на сервері містить записи кількох співробітників. Припустімо, що URL-адреса веб-програми така https://demo.guru99.com. Тепер, щоб отримати доступ до ресурсу запису співробітника через служби REST, можна виконати команду https://demo.guru99.com/employee/1 – Ця команда повідомляє веб-серверу, що необхідно надати деталі працівника, номер якого дорівнює 1.
  2. Дієслова запиту – Тут описано, що ви хочете зробити з ресурсом. Браузер видає дієслово GET, щоб наказати кінцевій точці отримати дані. Однак доступно багато інших дієслів, зокрема такі як POST, PUT і DELETE. Так і у випадку з прикладом https://demo.guru99.com/employee/1 , веб-браузер фактично видає дієслово GET, оскільки він хоче отримати деталі запису про співробітника.
  3. Запити заголовків – Це додаткові інструкції, надіслані разом із запитом. Вони можуть визначати тип необхідної відповіді або деталі авторизації.
  4. Тіло запиту – Дані надсилаються разом із запитом. Дані зазвичай надсилаються в запиті, коли надсилається запит POST до веб-служб REST. Під час виклику POST клієнт фактично повідомляє веб-службам REST, що він хоче додати ресурс до сервера. Отже, тіло запиту матиме деталі ресурсу, який потрібно додати на сервер.
  5. Тіло відповіді – Це основна частина відповіді. Отже, у нашому прикладі RESTful API, якби ми запитували веб-сервер через запит https://demo.guru99.com/employee/1 , веб-сервер може повернути XML-документ із усіма відомостями про працівника в Тілі відповіді.
  6. Коди статусу відповіді – Ці коди є загальними кодами, які повертаються разом із відповіддю від веб-сервера. Прикладом є код 200, який зазвичай повертається, якщо під час повернення відповіді клієнту немає помилки.

Заспокійливі методи

На діаграмі нижче показано в основному всі дієслова (POST, GET, PUT і DELETE) і приклад REST API того, що вони означатимуть.

Припустімо, що у нас є веб-служба RESTful, визначена в цьому місці. https://demo.guru99.com/employee . Коли клієнт робить будь-який запит до цієї веб-служби, він може вказати будь-який із звичайних дієслів HTTP GET, POST, DELETE і PUT. Нижче показано, що станеться, якщо відповідні дієслова надіслав клієнт.

  1. POST – Це використовуватиметься для створення нового працівника за допомогою веб-сервісу RESTful
  2. GET – Це використовуватиметься для отримання списку всіх співробітників, які використовують веб-службу RESTful
  3. PUT – Це використовуватиметься для оновлення всіх співробітників за допомогою веб-служби RESTful
  4. DELETE – Це використовуватиметься для видалення всіх співробітників, які використовують служби RESTful

Давайте поглянемо з точки зору лише одного запису. Припустимо, була службова книжка з номером працівника 1.

Наступні дії матимуть відповідне значення.

  1. POST – Це не можна застосувати, оскільки ми отримуємо дані співробітника 1, який уже створений.
  2. GET – Це використовуватиметься для отримання інформації про працівника з номером працівника 1 за допомогою веб-сервісу RESTful
  3. PUT – Це використовуватиметься для оновлення відомостей про працівника з номером працівника 1 за допомогою веб-служби RESTful
  4. DELETE – Використовується для видалення інформації про працівника з номером 1

Заспокійливі методи

Чому Restful

Restful здебільшого став популярним через наступні причини:

1. Гетерогенні мови та середовища – Це одна з фундаментальних причин, така ж, яку ми бачили SOAP а.

  • Це дозволяє веб-додаткам, створеним на різних мовах програмування, спілкуватися один з одним
  • За допомогою служб Restful ці веб-програми можуть розміщуватися в різних середовищах, деякі з них можуть бути ввімкненими Windows, а інші можуть бути на Linux.

Але врешті-решт, незалежно від того, яке середовище, кінцевий результат завжди повинен бути таким же, щоб вони могли спілкуватися один з одним. Веб-служби Restful пропонують таку гнучкість програмам, створеним на різних мовах програмування та платформах, щоб спілкуватися між собою.

На зображенні нижче наведено приклад веб-програми, яка потребує спілкування з іншими програмами, такими як Facebook, Twitter і Google.

Тепер, якби клієнтській програмі довелося працювати з такими сайтами, як Facebook, Twitter тощо, їм, ймовірно, потрібно було б знати, на якій мові створено Facebook, Google і Twitter, а також на якій платформі вони побудовані.

На основі цього ми можемо написати код інтерфейсу для нашої веб-програми, але це може виявитися кошмаром.

Facebook, Twitter і Google демонструють свої функції у вигляді веб-сервісів Restful. Це дозволяє будь-якій клієнтській програмі викликати ці веб-служби через REST.

Потрібен відпочинок

2. Подія пристроїв – Зараз над усім треба працювати Mobile пристроїв, будь то мобільні пристрої, ноутбуки чи навіть автомобільні системи.

Чи можете ви уявити собі кількість зусиль, щоб спробувати закодувати програми на цих пристроях для спілкування зі звичайними веб-додатками? Знову ж таки, Restful API може спростити цю роботу, тому що, як згадувалося в пункті № 1, вам справді не потрібно знати, який базовий рівень для пристрою.

3. Нарешті подія Хмари – Усе переходить у хмару. Програми повільно переходять до хмарних систем, таких як in Azure or Amazon. Azure та Amazon надають багато API на основі архітектури Restful. Отже, програми тепер потрібно розробляти таким чином, щоб вони були сумісні з хмарою. Отже, оскільки всі хмарні архітектури працюють за принципом REST, для веб-сервісів має більше сенсу програмуватись на архітектурі, заснованій на службах REST, щоб якнайкраще використовувати хмарні сервіси.

Спокійний Archiтектура

Додаток або архітектура, які вважаються RESTful або REST-стилем, мають такі характеристики

1. Стан і функціональність поділяються на розподілені ресурси – Це означає, що кожен ресурс має бути доступним за допомогою звичайних команд HTTP GET, POST, PUT або DELETE. Отже, якщо хтось хоче отримати файл із сервера, він повинен мати можливість надіслати запит GET і отримати файл. Якщо вони хочуть розмістити файл на сервері, вони повинні мати можливість надіслати запит POST або PUT. І, нарешті, якщо вони хочуть видалити файл із сервера, вони можуть надіслати запит DELETE.

2. Архітектура клієнт/сервер, без збереження стану, багаторівнева та підтримує кешування

  • Клієнт-сервер — це типова архітектура, де сервер може бути веб-сервером, на якому розміщено програму, а клієнт може бути таким же простим, як веб-браузер.
  • Без стану означає, що стан програми не підтримується в REST. Наприклад, якщо ви видаляєте ресурс із сервера за допомогою команди DELETE, ви не можете очікувати, що інформація про видалення буде передана наступному запиту.

Щоб переконатися, що ресурс видалено, вам потрібно буде надіслати запит GET. Запит GET використовувався б, щоб спочатку отримати всі ресурси на сервері. Після цього потрібно буде перевірити, чи справді ресурс видалено.

Принципи та обмеження RESTFul

Архітектура REST базується на кількох характеристиках, які детально описано нижче. Будь-яка веб-служба RESTful має відповідати наведеним нижче характеристикам, щоб вона називалася RESTful. Ці характеристики також відомі як принципи проектування, яких необхідно дотримуватися під час роботи зі службами на основі RESTful.

  1. RESTFul клієнт-сервер

    Принципи та обмеження RESTFul

Це найважливіша вимога до архітектури на основі REST. Це означає, що сервер матиме веб-сервіс RESTful, який забезпечить необхідну функціональність клієнту. Клієнт надсилає запит до веб-сервісу на сервері. Сервер або відхилить запит, або підкориться та надасть адекватну відповідь клієнту.

  1. Без громадянства

Концепція без збереження стану означає, що клієнт повинен переконатися, що вся необхідна інформація надана серверу. Це потрібно для того, щоб сервер міг належним чином обробити відповідь. Сервер не повинен зберігати будь-яку інформацію між запитами від клієнта. Це дуже проста незалежна послідовність запитань-відповідей. Клієнт задає питання, сервер відповідає на нього належним чином. Клієнт задасть інше запитання. Сервер не запам’ятає попередній сценарій запитання-відповідь і йому потрібно буде самостійно відповісти на нове запитання.

  1. Кеш

Принципи та обмеження RESTFul

Концепція кешу покликана допомогти у вирішенні проблеми без збереження стану, яка була описана в останньому пункті. Оскільки кожен запит клієнта сервера є незалежним за своєю природою, іноді клієнт може запитувати у сервера той самий запит повторно. Це незважаючи на те, що він уже просив це в минулому. Цей запит надійде на сервер, і сервер дасть відповідь. Це збільшує трафік у мережі. Кеш — це концепція, реалізована на клієнті для зберігання запитів, які вже були надіслані на сервер. Отже, якщо той самий запит надходить від клієнта, замість звернення до сервера він переходить до кешу та отримує необхідну інформацію. Це економить обсяг мережевого трафіку від клієнта до сервера.

  1. Багатошарова система

Концепція багаторівневої системи полягає в тому, що будь-який додатковий рівень, наприклад рівень проміжного програмного забезпечення, можна вставити між клієнтом і фактичним сервером, на якому розміщено веб-сервіс RESTFul (рівень проміжного програмного забезпечення — це місце, де створюється вся бізнес-логіка. Це може бути додаткова послуга створений, з яким клієнт міг би взаємодіяти, перш ніж він зробить виклик до веб-служби.). Але впровадження цього рівня має бути прозорим, щоб не заважати взаємодії між клієнтом і сервером.

  1. Інтерфейс/Уніфікований контракт

Це базова техніка того, як мають працювати веб-сервіси RESTful. RESTful в основному працює на веб-рівні HTTP та використовує наведені нижче ключові дієслова для роботи з ресурсами на сервері

  • POST – створити ресурс на сервері
  • GET – отримати ресурс із сервера
  • PUT – щоб змінити стан ресурсу або оновити його
  • ВИДАЛИТИ – видалити або видалити ресурс із сервера

Створіть свою першу веб-службу Restful в ASP.NET

У цьому посібнику з REST API ми дізнаємося, як створити веб-службу Restful в ASP.NET:

Веб-сервіси можна створювати різними мовами. Для створення служб на основі REST можна використовувати багато інтегрованих середовищ розробки.

У цьому прикладі RESTful API ми збираємося створити нашу програму REST у .Net за допомогою Visual Studio. У нашому прикладі для веб-сервісів Restful ми будемо емулювати наступний приклад служби REST.

У нас буде веб-служба Restful, яка працюватиме з наведеним нижче набором даних.

Наведений нижче набір даних представляє приклад REST API компанії, яка розкриває навчальні посібники на основі Tutorialid.

Підручник ПідручникName
0 Масиви
1 черги
2 Стеки

У нашому навчальному прикладі REST API ми збираємося реалізувати наведені нижче дієслова Restful.

  1. ОТРИМАТИ Підручник – Коли клієнт викликає цей Restful API, йому буде надано весь набір навчальних посібників, доступних у веб-службі.
  2. GET Підручник/Навчальний посібник – Коли клієнт викликає цей Restful API, йому буде надано ім’я підручника на основі Tutorialid, надісланого клієнтом.
  3. POST Tutorial/Tutorialname – Коли клієнт викликає цей Restful API, клієнт надсилає запит на вставку Tutorialname. Потім веб-служба додасть надіслану назву підручника до колекції.
  4. ВИДАЛИТИ підручник/ідентифікатор підручника– Коли клієнт викликає цей Restful API, клієнт надсилає запит на видалення Tutorialname на основі Tutorialid. Потім веб-служба видалить надіслану назву підручника з колекції.

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

Як створити свою першу веб-службу Restful

Крок 1) Створити новий проект.
Першим кроком є ​​створення порожнього Asp.Net Веб-додаток. У Visual Studio 2013 клацніть пункт меню Файл->Новий проект.

Створіть веб-службу Restful

Після того, як ви клацнете опцію «Новий проект», Visual Studio відкриє ще одне діалогове вікно для вибору типу проекту та надання необхідних деталей проекту. Це пояснюється в наступному кроці цього посібника з RESTful API

Крок 2) Введіть назву та місце розташування проекту.

  1. Обов’язково спочатку виберіть веб-сервіси RESTful C# веб-шаблон веб-додатку ASP.NET. Проект має бути такого типу, щоб створити проект веб-служб. Вибравши ці параметри, Visual Studio виконає необхідні кроки для додавання необхідних файлів, необхідних для будь-якої веб-програми.
  2. Дайте назву своєму проекту, який у нашому випадку було надано як «Webservice.REST».
  3. Потім переконайтеся, що вказали місце, де будуть зберігатися файли проекту.

Створіть веб-службу Restful

Після завершення ви побачите файл проекту, створений у вашому провіднику рішень у Visual Studio 2013.

Створіть веб-службу Restful

Крок 3) Створіть файл веб-служби.
Наступним кроком є ​​створення файлу веб-служби, який матиме веб-службу RESTful

  1. Спочатку клацніть правою кнопкою миші файл проекту, як показано нижче

Створіть веб-службу Restful

  1. На цьому етапі
    1. Клацніть правою кнопкою миші на файлі проекту
    2. Виберіть опцію «Додати->новий елемент».

Створіть веб-службу Restful

У діалоговому вікні, яке з’явиться, необхідно виконати наступні дії

  1. Виберіть параметр служби WCF (з підтримкою Ajax) – виберіть файл цього типу, це спричинить Visual studio щоб додати базовий код, який допоможе створити веб-сервіс RESTful. WCF означає Windows Комунікація Foundation. WCF — це бібліотека для програм різних платформ або однієї платформи для зв’язку через різні протоколи, такі як TCP, HTTP, HTTPS. Ajax в основному є асинхронним JavaScript і XML. AJAX дозволяє веб-сторінкам оновлюватися асинхронно шляхом обміну невеликими обсягами даних із сервером за лаштунками.
  2. Далі дайте назву службі, яка в нашому випадку є TutorialService.
  3. Нарешті натисніть кнопку «Додати», щоб додати службу до рішення.

Створіть веб-службу Restful

Крок 4) Зробіть конфігурацію.
Наступним кроком є ​​фактичне внесення змін у конфігурацію, щоб цей проект міг завершити роботу з веб-службами RESTful. Для цього потрібно внести зміни у файл, що викликається web.config. Цей файл відображається в тому ж вікні, що й файл проекту Webservice. Файл Web.config містить усі налаштування, завдяки яким веб-додаток працює належним чином. Внесені зміни фактично дозволяють програмі надсилати та отримувати дані як чисту веб-службу RESTful.

  1. Натисніть файл Web.config, щоб відкрити код

Створіть веб-службу Restful

  1. Знайдіть лінію

Створіть веб-службу Restful

  1. Змініть рядок на

Створіть веб-службу Restful

Крок 5) Додайте наш код для реалізації.
Наступним кроком у цьому посібнику з RESTful API є додавання нашого коду для реалізації. Весь наведений нижче код потрібно записати у файлі TutorialService.svc

  1. Перший біт – додати код для представлення наших даних, які використовуватимуться в нашій програмі. Отже, у нас буде список рядкових змінних зі значеннями «Масиви», «Черги» та «Стеки». Це представлятиме назву навчальних посібників, доступних через нашу веб-службу хостингу.

Створіть веб-службу Restful

namespace Webservice.REST
{
	[ServiceContract(Namespace = "")]
	[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed
	public class TutorialService
	{
		private static List<String> lst = new List<String>
		(new String[] {"Arrays","Queues","Stacks"});

Крок 6) Визначте код для нашого методу GET.
Далі ми визначимо код для нашого методу GET. Цей код також зберігатиметься в тому самому файлі TutorialService.svc. Цей код запускатиметься кожного разу, коли ми будемо викликати службу з нашого браузера.

Наведений нижче метод буде використано для виконання наведеного нижче сценарію

  • Якщо користувач бажає отримати список усіх доступних посібників, для цього потрібно написати наведений нижче код.

Створіть веб-службу Restful

[WebGet(UriTemplate="/Tutorial")]

public String GetAllTutorial()
{
	int count = 1st.Count;
	String TutorialList = "";
	for (int i = 0; i < count; i++)
	TutorialList = TutorialList + lst[i] + ",";
	return TutorialList;
}

Пояснення коду: -

  1. Перший рядок коду є найважливішим. Він використовується для визначення того, як ми можемо викликати цей метод через URL-адресу. Отже, якщо посилання на наш веб-сервіс є http://localhost:52645/TutorialService.svc і якщо ми додамо '/Tutorial' до URL як http://localhost:52645/TutorialService.svc/Tutorial , буде викликано наведений вище код. Атрибут 'WebGet' — це параметр, який дозволяє цьому методу бути методом RESTful, щоб його можна було викликати за допомогою дієслова GET.
  2. Цей розділ коду використовується для перегляду нашого списку рядків у змінній 'lst' і повернення їх усіх програмі, що викликає.

Крок 7) Повернути результат.
Наведений нижче код гарантує, що якщо виклик GET зроблено до служби підручників з ідентифікатором підручника, він повертатиме відповідну назву підручника на основі ідентифікатора підручника.

Створіть веб-службу Restful

[WebGet (UriTemplate = "/Tutorial/{Tutorialid}")]

public String GetTutorialbyID(String Tutorialid)
{
	int pid;
	Int32.TryParse(Tutorialid, out pid);
	return lst[pid];
}

Пояснення коду: -

  1. Перший рядок коду є найважливішим. Він використовується для визначення того, як ми можемо викликати цей метод через URL-адресу. Отже, якщо посилання на наш веб-сервіс є http://localhost:52645/TutorialService.svc і якщо ми додамо '/Tutorial/{Tutorialid}' до URL-адреси, тоді ми зможемо викликати веб-службу як http://localhost:52645/TutorialService.svc/Tutorial/1 як приклад. Тоді веб-служба повинна буде повернути назву підручника, яка мала ідентифікатор підручника №1.
  2. Цей розділ коду використовується для повернення «назви підручника», який має ідентифікатор підручника, переданого веб-методу.
  • За умовчанням потрібно пам’ятати, що все, що передається URL-адресі в браузері, є рядком.
  • Але ви повинні пам’ятати, що індекс нашого списку має бути цілим числом, тому ми додаємо необхідний код, щоб спочатку перетворити Tutorialid на ціле число, а потім використовувати його для доступу до позиції індексу в нашому списку та
  • Потім відповідно поверніть значення викликаючій програмі.

Крок 8) Напишіть код для методу POST.
Наступним кроком є ​​написання коду для нашого методу POST. Цей метод буде викликано кожного разу, коли ми хочемо додати значення рядка до нашого списку посібників за допомогою методу POST. Наприклад, якщо ви хочете додати назву підручника «Тестування програмного забезпечення», вам потрібно буде використати метод POST.

Створіть веб-службу Restful

Пояснення коду: -

  1. Перший рядок — це атрибут «WebInvoke», який додано до нашого методу. Це дозволяє викликати метод через виклик POST. Атрибут RequestFormat і ResponseFormat слід згадувати як JSON, оскільки під час публікації значень у веб-службі RESTFul значення мають бути в цьому форматі.
  2. Другий рядок коду використовується для додавання значення рядка, переданого через виклик POST, до нашого існуючого списку рядків посібника.

Крок 9) Додайте метод для обробки операції DELETE.
Нарешті ми збираємося додати наш метод для обробки операції DELETE. Цей метод буде викликано кожного разу, коли ми хочемо видалити існуюче значення рядка з нашого списку посібників за допомогою методу DELETE.

Створіть веб-службу Restful

[WebInvoke(Method = "DELETE", RequestFormat = WebMessageFormat.Json,
	UriTemplate = "/Tutorial/{Tutorialid}", ResponseFormat = WebMessageFormat.Json,
	BodyStyle = WebMessageBodyStyle.Wrapped)]
	
public void DeleteTutorial(String Tutorialid)
{
	int pid;
	Int32.TryParse(Tutorialid, out pid);
	1st.RemoveAt(pid);
}

Пояснення коду: -

  1. Перший рядок — це атрибут «WebInvoke», який додано до нашого методу. Це дозволяє викликати метод через виклик POST. Атрибут RequestFormat і ResponseFormat слід згадувати як JSON, оскільки під час публікації значень у веб-службі RESTFul значення мають бути в цьому форматі. Зауважте, що для параметра «Метод» встановлено значення «DELETE». Це означає, що кожного разу, коли ми видаємо дієслово DELETE, цей метод буде викликаний.
  2. Другий рядок коду використовується для отримання Tutorialid, надісланого через виклик DELETE, і подальшого видалення цього ідентифікатора з нашого списку. ( Int32 функція в коді використовується для перетворення ID підручника з рядкової змінної в ціле число).

Запуск вашої першої веб-служби Restful

Тепер, коли ми створили весь наш веб-сервіс у наведеному вище розділі. Давайте подивимося, як ми можемо запустити службу Tutorial, щоб її можна було викликати з будь-якого клієнта.

Щоб запустити веб-службу, виконайте наведені нижче дії

Крок 1) Клацніть правою кнопкою миші файл проекту – Webservice.REST

Запуск веб-служби Restful

Крок 2) Виберіть пункт меню «Установити як проект запуску». Це забезпечить запуск цього проекту, коли Visual Studio запускає все рішення

Запуск веб-служби Restful

Крок 3) Наступним кроком буде запуск самого проекту. Тепер, залежно від браузера за замовчуванням, встановленого в системі, відповідна назва браузера з’явиться поруч із кнопкою запуску у Visual Studio. У нашому випадку ми маємо Google Chrome з'являючись. Просто натисніть на цю кнопку.

Запуск веб-служби Restful

Вихід:-

Коли проект запущено, ви можете перейти до розділу TutorialService.svc/Tutorial, і ви отримаєте наведені нижче результати.

Запуск веб-служби Restful

У наведеному вище виході

  • Ви бачите, що браузер викликає дієслово «GET» і виконує метод «GetAllTutorial» у веб-службі. Цей модуль використовується для відображення всіх навчальних посібників, наданих нашою веб-службою.

Тестування вашої першої веб-служби Restful

У наведеному вище розділі ми вже бачили, як використовувати браузер для виконання дієслова «GET» і виклику «GetAllTutorial».

  1. Давайте тепер використаємо браузер для виконання наступного сценарію використання.

GET Tutorial/Tutorialid – коли клієнт викликає цей Restful API, йому буде надано назву Tutorial на основі Tutorialid, надісланого клієнтом

У своєму браузері додайте рядок /1 після слова підручника в URL-адресу. Якщо ви натиснете кнопку Enter, ви отримаєте наведений нижче результат

Тестування веб-служби Restful

Тепер ви побачите результат Queues, який фактично відповідає числу 1 у нашому списку навчальних рядків. Це означає, що метод «GetTutorialbyID» зараз викликається з нашої веб-служби. Це також показує, що значення 1 успішно передається через браузер до нашої веб-служби та до нашого методу, і тому ми отримуємо правильне відповідне значення «Черги» у браузері.

  1. Далі давайте використаємо наш веб-сервіс, виконавши наведений нижче сценарій. Для цього вам потрібно встановити інструмент під назвою «Fiddler», який можна безкоштовно завантажити з сайту.

POST Tutorial/Tutorialname – Коли клієнт викликає цей Restful API, клієнт надсилає запит на вставлення Tutorialname. Потім веб-служба додасть надіслану назву підручника до колекції.

Запустіть інструмент Filddler і виконайте наведені нижче дії;

  1. Перейдіть до розділу композитора. Це використовується для створення запитів, які можна надсилати до будь-якої веб-програми.
  2. Переконайтеся, що тип запиту – «POST» і що надходить правильна URL-адреса, що в нашому випадку має бути http://localhost:52645/TutorialService.svc/Tutorial
  3. Переконайтеся, що Content-Type позначено як application/json. Пам’ятайте, що наш метод запиту POST у нашій веб-службі приймає лише дані у стилі json, тому нам потрібно переконатися, що це вказано, коли ми надсилаємо запит до нашої програми.
  4. Нарешті, нам потрібно ввести наші дані. Пам’ятайте, що наш метод для POST приймає параметр під назвою «str». Отже, тут ми вказуємо, що хочемо додати значення під назвою «Дерева» до нашої колекції імен підручників і переконатися, що воно позначене тегом імені змінної str.

Нарешті, просто натисніть кнопку «Виконати» у fiddler. Це надішле запит до веб-сервісу для ПУБЛІКАЦІЇ даних «Дерева» до нашого веб-сервісу.

Тестування веб-служби Restful

Тепер, коли ми переглядаємо URL-адресу підручника, щоб показати всі рядки в нашому списку підручників, тепер ви побачите значення «Дерева» також присутнє. Це показує, що запит POST до веб-сервісу було успішно виконано та його успішно додано до нашого списку посібників.

Тестування веб-служби Restful

  1. Далі давайте використаємо наш веб-сервіс, виконавши наведений нижче сценарій. Для цього нам також потрібно використовувати інструмент fiddler

DELETE Tutorial/Tutorialid. Коли клієнт викликає цей Restful API, клієнт надсилає запит на видалення Tutorialname на основі Tutorialid. Потім веб-служба видалить надіслану назву підручника з колекції.

Запустіть інструмент Filddler і виконайте наведені нижче дії

  1. Перейдіть до розділу композитора. Це використовується для створення запитів, які можна надсилати до будь-якої веб-програми.
  2. Переконайтеся, що тип запиту «DELETE» і правильна URL-адреса потрапляє, що в нашому випадку має бути http://localhost:52645/TutorialService.svc/Tutorial. Переконайтеся, що ідентифікатор, який використовується для видалення рядка зі списку, надіслано через URL як параметр. У нашому прикладі REST ми надсилаємо 1, тому 2 буде видаленоnd елемент нашої колекції «Черги».

Нарешті, просто натисніть кнопку «Виконати» у fiddler. Це надішле веб-службі запит на ВИДАЛЕННЯ даних «Черги» нашої веб-служби.

Тестування веб-служби Restful

Тепер, коли ми переглядаємо URL-адресу підручника, щоб показати всі рядки в нашому списку підручників, ви помітите, що значення «Черги» більше не існує.

Це показує, що запит DELETE до веб-служби було успішно виконано. Елемент під номером 1 у нашому списку рядків посібника успішно видалено.

Тестування веб-служби Restful

Резюме

  • REST означає REpresentational State Transfer. REST використовується для створення веб-сервісів, які є легкими, зручними в обслуговуванні та масштабованими.
  • Все більше додатків переходять на архітектуру Restful. Це пов’язано з тим, що зараз багато людей користуються мобільними пристроями, а різноманітні додатки переходять у хмару.
  • Основними аспектами REST є ресурси, які знаходяться на сервері, і дієслова GET, POST, PUT і DELETE, які можна використовувати для роботи з цими ресурсами.
  • Visual Studio та .Net можна використовувати для створення веб-служб Restful.
  • Коли Тестування веб-служб для POST і PUT, вам потрібно використовувати інший інструмент під назвою fiddler, який можна використовувати для надсилання запитів POST і PUT на сервер.

Підсумуйте цей пост за допомогою: