Учебники

4) Веб-сервисы RESTful

Что такое веб-сервис Restful?

Restful Web Service — это легкий, обслуживаемый и масштабируемый сервис, построенный на архитектуре REST. Веб-служба Restful, предоставляя вызывающему клиенту API из вашего приложения безопасным, единообразным способом без сохранения состояния. Вызывающий клиент может выполнять предопределенные операции, используя сервис Restful. Основным протоколом для REST является HTTP. REST означает REpresentational State Transfer.

В этом уроке вы узнаете

Ключевые элементы RESTful

Веб-сервисы действительно прошли долгий путь с момента своего появления. В 2002 году веб-консорциум выпустил определение веб-служб WSDL и SOAP. Это сформировало стандарт того, как реализованы веб-сервисы.

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

REST — это способ доступа к ресурсам, которые находятся в определенной среде. Например, у вас может быть сервер, на котором могут размещаться важные документы, изображения или видео. Все это пример ресурсов. Если клиент, скажем, веб-браузер нуждается в любом из этих ресурсов, он должен отправить запрос на сервер для доступа к этим ресурсам. Теперь REST определяет способ доступа к этим ресурсам.

Ключевые элементы реализации RESTful:

  1. Ресурсы . Первым ключевым элементом является сам ресурс. Предположим, что веб-приложение на сервере имеет записи о нескольких сотрудниках. Предположим, что URL-адрес веб-приложения — http://demo.guru99.com . Теперь, чтобы получить доступ к ресурсу записей о сотрудниках через REST, можно выполнить команду http://demo.guru99.com/employee/1 — эта команда сообщает веб-серверу, чтобы он предоставил сведения о сотруднике, чей номер сотрудника равен 1. ,

  2. Глаголы запроса — они описывают, что вы хотите сделать с ресурсом. Браузер выдает глагол GET, чтобы указать конечной точке, что он хочет получить данные. Тем не менее, есть много других доступных глаголов, включая такие, как POST, PUT и DELETE. Так, в случае примера http://demo.guru99.com/employee/1 , веб-браузер фактически выдает глагол GET, потому что он хочет получить детали записи о сотруднике.

  3. Заголовки запроса — это дополнительные инструкции, отправленные с запросом. Они могут определять тип требуемого ответа или детали авторизации.

  4. Тело запроса — данные отправляются вместе с запросом. Данные обычно отправляются в запросе, когда POST-запрос сделан к веб-службе REST. При вызове POST клиент фактически сообщает веб-службе, что он хочет добавить ресурс на сервер. Следовательно, тело запроса будет содержать информацию о ресурсе, который требуется добавить на сервер.

  5. Тело ответа — это основная часть ответа. Таким образом, в нашем примере, если бы мы запросили веб-сервер с помощью запроса http://demo.guru99.com/employee/1 , веб-сервер мог бы вернуть XML-документ со всеми данными сотрудника в теле ответа.

  6. Коды состояния ответа. Эти коды представляют собой общие коды, которые возвращаются вместе с ответом веб-сервера. Примером является код 200, который обычно возвращается, если нет ошибки при возврате ответа клиенту.

Restful Методы

На приведенной ниже диаграмме показаны в основном все глаголы (POST, GET, PUT и DELETE) и пример их значения.

Давайте предположим, что у нас есть RESTful веб-сервис, определенный на месте. http://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. УДАЛИТЬ — Это используется для удаления сведений о сотруднике с № сотрудника 1

Веб-сервисы RESTful

Почему Отдых

Отдых в основном вошел в популярность по следующим причинам:

  1. Гетерогенные языки и среды. Это одна из фундаментальных причин, аналогичных тем, которые мы видели и для SOAP .
  • Это позволяет веб-приложениям, построенным на разных языках программирования, общаться друг с другом.
  • С помощью сервисов Restful эти веб-приложения могут находиться в разных средах, некоторые могут быть в Windows, а другие в Linux.

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

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

Теперь, если бы клиентскому приложению приходилось работать с такими сайтами, как Facebook, Twitter и т. Д., Им, вероятно, пришлось бы знать, на каком языке построены Facebook, Google и Twitter, а также на какой платформе они построены.

Исходя из этого, мы можем написать интерфейсный код для нашего веб-приложения, но это может оказаться кошмаром.

Facebook, Twitter и Google предоставляют свои функциональные возможности в виде веб-сервисов Restful. Это позволяет любому клиентскому приложению вызывать эти веб-сервисы через REST.

Веб-сервисы RESTful

  1. Событие устройств — в наше время все должно работать на мобильных устройствах, будь то мобильные устройства, ноутбуки или даже автомобильные системы.

    Можете ли вы представить, сколько усилий вы пытаетесь написать для приложений на этих устройствах, чтобы общаться с обычными веб-приложениями? Опять же, Restful API могут упростить эту работу, потому что, как уже упоминалось в пункте 1, вам действительно не нужно знать, что является базовым уровнем для устройства.

  2. Наконец это событие Облака — Все движется к облаку. Приложения медленно перемещаются в облачные системы, такие как Azure или Amazon. Azure и Amazon предоставляют множество API на основе архитектуры Restful. Следовательно, приложения теперь необходимо разрабатывать таким образом, чтобы они были совместимы с облаком. Таким образом, поскольку все облачные архитектуры работают по принципу REST, имеет смысл программировать веб-службы на основе архитектуры REST, чтобы наилучшим образом использовать облачные службы.

Restful Архитектура

Приложение или архитектура, рассматриваемые как 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. Stateless

Концепция без сохранения состояния означает, что клиент должен обеспечить предоставление всей необходимой информации на сервер. Это необходимо для того, чтобы сервер мог обработать ответ соответствующим образом. Сервер не должен поддерживать какую-либо информацию между запросами от клиента. Это очень простая независимая последовательность вопросов и ответов. Клиент задает вопрос, сервер отвечает на него соответствующим образом. Клиент задаст еще один вопрос. Сервер не запомнит предыдущий сценарий «вопрос-ответ» и должен будет самостоятельно ответить на новый вопрос.

  1. кэш

Веб-сервисы RESTful

Концепция Cache — помочь с проблемой безгражданства, которая была описана в последнем пункте. Поскольку каждый запрос клиента к серверу независим по своей природе, иногда клиент может запросить у сервера тот же запрос еще раз. Это даже при том, что это уже просило это в прошлом. Этот запрос отправится на сервер, а сервер даст ответ. Это увеличивает трафик в сети. Кеш — это концепция, реализованная на клиенте для хранения запросов, которые уже были отправлены на сервер. Таким образом, если тот же запрос будет выдан клиентом, а не на сервер, он перейдет в кэш и получит необходимую информацию. Это экономит объем сетевого трафика от клиента к серверу.

  1. Многоуровневая система

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

  1. Интерфейс / Единый договор

Это основная методика работы веб-сервисов RESTful. RESTful в основном работает на веб-уровне HTTP и использует следующие ключевые глаголы для работы с ресурсами на сервере

  • POST — создать ресурс на сервере
  • GET — получить ресурс с сервера
  • PUT — изменить состояние ресурса или обновить его
  • DELETE — удалить или удалить ресурс с сервера.

Создайте свой первый веб-сервис Restful в ASP.NET

Веб-сервисы могут быть созданы на разных языках. Многие интегрированные среды разработки могут использоваться для создания служб на основе REST.

В этом примере мы собираемся создать наше REST-приложение в .Net с использованием Visual Studio. В нашем примере для веб-служб Restful мы будем эмулировать следующий пример.

У нас будет веб-сервис Restful, который будет работать с указанным ниже набором данных.

Приведенный ниже набор данных представляет собой пример наличия компании, которая предоставляет Учебное пособие, основанное на Учебном пособии.

Tutorialid TutorialName
0 Массивы
1 Очереди
2 Стеки

В нашем примере мы собираемся реализовать приведенные ниже Restful глаголы.

  1. GET Tutorial — когда клиент вызывает этот Restful API, ему будет предоставлен весь набор Tutorials, доступных из веб-сервиса.
  2. GET Tutorial / Tutorialid — Когда клиент вызывает этот Restful API, ему будет присвоено имя Tutorial на основе Tutorialid, отправленного клиентом.
  3. POST Tutorial / Tutorialname — Когда клиент вызывает этот Restful API, клиент отправит запрос на вставку Tutorialname. Затем веб-служба добавит имя отправленного учебника в коллекцию.
  4. УДАЛИТЬ Tutorial / Tutorialid — Когда клиент вызывает этот Restful API, клиент отправит запрос на удаление имени Tutorialid на основе Tutorialid. Затем веб-служба удалит отправленное имя учебника из коллекции.

Давайте следуем приведенным ниже шагам при создании наших первых веб-сервисов RESTful, которые осуществляют вышеуказанную реализацию.

Шаг 1) Первый шаг — создать пустое веб-приложение Asp.Net . В Visual Studio 2013 щелкните пункт меню Файл-> Новый проект.

Веб-сервисы RESTful

После того, как вы нажмете на опцию «Новый проект», Visual Studio предоставит вам другое диалоговое окно для выбора типа проекта и предоставления необходимых деталей проекта. Это объясняется в следующем шаге

Шаг 2) На этом этапе

  1. Обязательно сначала выберите веб-шаблон 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 Communication 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. Найти по строке <enableWebScript>

Веб-сервисы RESTful

  1. Измените строку на <webHttp>

Веб-сервисы RESTful

Шаг 5) Следующий шаг — добавить наш код для реализации. Весь приведенный ниже код должен быть записан в файле TutorialService.svc

  1. Первый шаг — добавить код для представления наших данных, которые будут использоваться в нашей программе. Итак, у нас будет список строковых переменных со значениями «Массивы», «Очереди» и «Стеки». Это будет название учебника, доступное через наш веб-сервис.

Веб-сервисы RESTful

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

Шаг 6) Далее мы определим код для нашего метода 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) Приведенный ниже код гарантирует, что если в службу Tutorial Service будет выполнен вызов GET с идентификатором Tutorial, то он вернет соответствующее имя Tutorial на основе идентификатора Tutorial.

Веб-сервисы 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 в качестве примера. Затем веб-сервис должен будет вернуть имя Tutorial с идентификатором Tutorial # 1.
  2. Этот раздел кода используется для возврата «имени учебника», в котором идентификатор учебника передается веб-методу.
  • По умолчанию необходимо помнить, что все, что передается на URL в браузере, является строкой.
  • Но вы должны помнить, что индекс в нашем списке должен быть целым числом, поэтому мы добавляем необходимый код, чтобы сначала преобразовать Tutorialid в целое число, а затем использовать его для доступа к позиции индекса в нашем списке и
  • Затем верните значение вызывающей программе соответственно.

Шаг 8) Следующий шаг — написать код для нашего метода POST. Этот метод будет вызываться всякий раз, когда мы хотим добавить строковое значение в наш список учебных пособий с помощью метода POST. Например, если вы хотите добавить название учебника «Тестирование программного обеспечения», вам нужно будет использовать метод POST.

Веб-сервисы RESTful

Объяснение кода: —

  1. Первая строка — это атрибут «WebInvoke», который был присоединен к нашему методу. Это позволяет вызывать метод через вызов POST. Атрибуты RequestFormat и ResponseFormat должны быть упомянуты как JSON, поскольку при публикации значений в веб-сервис RESTFul значения должны быть в этом формате.
  2. Вторая строка кода используется для добавления строкового значения, переданного через вызов POST, в наш существующий список строк Tutorial.

Шаг 9) Наконец, мы собираемся добавить наш метод для обработки операции DELETE. Этот метод будет вызываться всякий раз, когда мы хотим удалить существующее строковое значение из нашего списка учебных пособий с помощью метода DELETE.

Веб-сервисы RESTful

[WebInvoke(Method = "DELETE", RequestFormat = WebMessageFormat.Ison,
	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 значения должны быть в этом формате. Обратите внимание, что для параметра Method установлено значение «DELETE». Это означает, что всякий раз, когда мы выдаем команду DELETE, этот метод будет вызываться.
  2. Вторая строка кода используется для получения Tutorialid, отправленного с помощью вызова DELETE, и последующего удаления этого идентификатора из нашего списка. (Функция Int32 в коде используется для преобразования идентификатора учебника из строковой переменной в целое число).

Запуск вашего первого веб-сервиса 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 после слова Tutorial в URL. Если вы нажмете кнопку ввода, вы получите ниже вывод

Веб-сервисы 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.’ Поэтому здесь мы указываем, что мы хотим добавить значение под названием «Деревья» в нашу коллекцию имен Tutorial и убедиться, что оно помечено как имя переменной str.

Наконец, просто нажмите кнопку «Выполнить» в Fiddler. Это отправит запрос в веб-сервис для размещения данных «Деревья» в нашем веб-сервисе.

Веб-сервисы RESTful

Теперь, когда мы перейдем к URL-адресу Tutorial, чтобы показать все строки в нашем списке Tutorial, вы увидите, что значение «Trees» также присутствует. Это показывает, что запрос POST к веб-службе был успешно выполнен и что он был успешно добавлен в наш учебный список.

Веб-сервисы RESTful

  1. Далее давайте использовать наш веб-сервис, выполнив следующий сценарий. Для этого также нам нужно использовать инструмент Fiddler

УДАЛИТЬ Tutorial / Tutorialid — Когда клиент вызывает этот Restful API, клиент отправит запрос на удаление имени Tutorialid на основе Tutorialid. Затем веб-служба удалит отправленное имя учебника из коллекции.

Запустите инструмент Filddler и выполните следующие шаги

  1. Перейти в раздел композитора. Это используется для создания запросов, которые могут быть отправлены на любой веб

    применение.

  2. Убедитесь, что типом запроса является «УДАЛИТЬ», и выполняется поиск правильного URL-адреса, который в нашем случае должен быть http: // localhost: 52645 / TutorialService.svc / Tutorial . Убедитесь, что идентификатор, который используется для удаления строки в списке, отправляется через URL в качестве параметра. В нашем примере, мы посылаем 1 так что это приведет к удалению 2 — й элемент в нашей коллекции , которая «очередями».

Наконец, просто нажмите кнопку «Выполнить» в Fiddler. Это отправит запрос в веб-сервис для УДАЛЕНИЯ данных «Очереди» в наш веб-сервис.

Веб-сервисы RESTful

Теперь, когда мы перейдем к URL-адресу учебника, чтобы показать все строки в нашем списке учебников, вы заметите, что значение «Очереди» больше не присутствует.

Это показывает, что запрос DELETE к веб-службе был успешно выполнен. Элемент с индексом № 1 в нашем списке строк Tutorial был успешно удален.

Веб-сервисы RESTful

Резюме

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