Учебное пособие по веб-службам RESTful с примером REST API

Содержание:

Anonim

Что такое Restful Web Services?

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

В этом руководстве по REST API вы узнаете:

  • Ключевые элементы RESTful
  • Успокаивающие методы
  • Почему спокойный
  • Спокойная архитектура
  • Принципы и ограничения RestFul
  • Создайте свою первую веб-службу Restful в ASP.NET
  • Запуск вашего первого веб-сервиса Restful
  • Тестирование вашего первого веб-сервиса Restful

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

Веб-службы REST действительно прошли долгий путь с момента своего создания. В 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. Тело запроса - данные отправляются вместе с запросом. Данные обычно отправляются в запросе, когда к веб-службам REST выполняется запрос POST. В вызове POST клиент фактически сообщает веб-службам REST, что он хочет добавить ресурс на сервер. Следовательно, в теле запроса будут сведения о ресурсе, который требуется добавить на сервер.

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

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

Успокаивающие методы

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

Предположим, что у нас есть веб-служба RESTful, определенная в этом месте. http://demo.guru99.com/employee . Когда клиент делает какой-либо запрос к этой веб-службе, он может указать любой из обычных HTTP-глаголов GET, POST, DELETE и PUT. Ниже показано, что произошло бы, если бы соответствующие глаголы были отправлены клиентом.

  1. POST - это будет использоваться для создания нового сотрудника с помощью веб-службы RESTful.
  2. GET - будет использоваться для получения списка всех сотрудников, использующих веб-службу RESTful.
  3. PUT - это будет использоваться для обновления всех сотрудников, использующих веб-службу RESTful.
  4. УДАЛИТЬ - это будет использоваться для удаления всех сотрудников, использующих службы RESTful.

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

Следующие действия будут иметь соответствующее значение.

  1. POST - это не применимо, поскольку мы получаем данные сотрудника 1, который уже создан.
  2. GET - это будет использоваться для получения сведений о сотруднике с номером сотрудника как 1 с помощью веб-службы RESTful.
  3. PUT - это будет использоваться для обновления сведений о сотруднике с номером сотрудника как 1 с использованием веб-службы RESTful.
  4. УДАЛИТЬ - используется для удаления сведений о сотруднике с номером сотрудника как 1.

Почему спокойный

В основном, успокаивающий приобрел популярность по следующим причинам:

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

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

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

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

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

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

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

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

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

Спокойная архитектура

Приложение или архитектура, рассматриваемые как RESTful или REST-style, обладают следующими характеристиками.

  1. Состояние и функциональность разделены на распределенные ресурсы - это означает, что каждый ресурс должен быть доступен через обычные HTTP-команды GET, POST, PUT или DELETE. Поэтому, если кто-то хочет получить файл с сервера, он должен иметь возможность отправить запрос GET и получить файл. Если они хотят разместить файл на сервере, они должны иметь возможность отправить запрос POST или PUT. И, наконец, если они хотят удалить файл с сервера, они отправляют запрос DELETE.
  2. Архитектура клиент / сервер, без состояния, многоуровневая и поддерживает кеширование -
  • Клиент-сервер - это типичная архитектура, в которой сервер может быть веб-сервером, на котором размещено приложение, а клиент может быть таким же простым, как веб-браузер.
  • Без сохранения состояния означает, что состояние приложения не поддерживается в REST.

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

    Чтобы гарантировать удаление ресурса, вам необходимо отправить запрос GET. Запрос GET будет использоваться, чтобы сначала получить все ресурсы на сервере. После этого нужно будет проверить, действительно ли ресурс был удален.

Принципы и ограничения RESTFul

Архитектура REST основана на нескольких характеристиках, которые подробно описаны ниже. Любая веб-служба RESTful должна соответствовать приведенным ниже характеристикам, чтобы ее можно было назвать RESTful. Эти характеристики также известны как принципы проектирования, которые необходимо соблюдать при работе со службами на основе RESTful.

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

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

  1. Без гражданства

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

  1. Кеш

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

  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.

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

В нашем учебном примере по REST API мы собираемся реализовать приведенные ниже Restful Verbs.

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

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

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

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

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

  1. Убедитесь, что вы сначала выбрали веб-шаблон C # веб-служб RESTful для веб-приложения ASP.NET. Чтобы создать проект веб-сервисов, проект должен быть этого типа. Выбрав эти параметры, Visual Studio затем выполнит необходимые шаги для добавления необходимых файлов, которые требуются любому веб-приложению.
  2. Дайте название вашему проекту, которое в нашем случае было "Webservice.REST".
  3. Затем убедитесь, что вы указали место, где будут храниться файлы проекта.

После этого вы увидите файл проекта, созданный в обозревателе решений в Visual Studio 2013.

Шаг 3) Следующим шагом является создание файла веб-службы, который будет содержать веб-службу RESTful.

  1. Сначала щелкните правой кнопкой мыши файл проекта, как показано ниже.
  1. На этом этапе
    1. Щелкните правой кнопкой мыши файл проекта
    2. Выберите вариант «Добавить-> новый элемент».

В появившемся диалоговом окне необходимо выполнить следующие действия.

  1. Выберите вариант службы WCF (с поддержкой Ajax) - выберите файл этого типа, он заставит Visual Studio добавить некоторый базовый код, который помогает создать веб-службу RESTful. WCF означает Windows Communication Foundation. WCF - это библиотека для приложений различных платформ или одной и той же платформы для взаимодействия по различным протоколам, таким как TCP, HTTP, HTTPS. По сути, Ajax - это асинхронный JavaScript и XML. AJAX позволяет обновлять веб-страницы асинхронно, негласно обмениваясь небольшими объемами данных с сервером.
  2. Затем дайте имя службе, в нашем случае это TutorialService.
  3. Наконец, нажмите кнопку «Добавить», чтобы добавить службу в решение.

Шаг 4) Следующим шагом является фактическое изменение конфигурации, чтобы этот проект мог завершить работу с веб-службами RESTful. Для этого необходимо внести изменения в файл Web.config . Этот файл появляется в том же окне, что и файл проекта Webservice. Файл Web.config содержит все конфигурации, которые заставляют веб-приложение работать должным образом. Внесенное изменение фактически позволяет приложению отправлять и получать данные как чистую веб-службу RESTful.

  1. Щелкните файл Web.config, чтобы открыть код.
  1. Найдите строку
  1. Измените строку на

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

  1. Первый бит - добавить код для представления наших данных, которые будут использоваться в нашей программе. Итак, у нас будет список строковых переменных со значениями «Массивы», «Очереди» и «Стеки». Это будет представлять название учебников, доступных через нашу веб-службу хостинга.
namespace Webservice.REST{[ServiceContract(Namespace = "")][AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowedpublic class TutorialService{private static List  lst = new List  (new String[] {"Arrays","Queues","Stacks"});  

Шаг 6) Далее мы определим код для нашего метода GET. Этот код также будет находиться в том же файле TutorialService.svc. Этот код будет запускаться всякий раз, когда мы вызываем службу из нашего браузера.

Приведенный ниже метод будет использоваться для выполнения нижеприведенного сценария.

  • Если пользователю нужен список всех доступных руководств, для этого необходимо написать приведенный ниже код.
[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 к Tutorial Service с идентификатором Tutorial он вернет соответствующее имя учебного пособия на основе идентификатора учебного пособия.

[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 и если мы добавим к URL-адресу '/ Tutorial / {Tutorialid}', то мы сможем вызвать веб-службу как http: //localhost:52645/TutorialService.svc/Tutorial/1 в качестве примера. Затем веб-службе необходимо будет вернуть имя учебного пособия с идентификатором учебного пособия №1.
  2. Этот раздел кода используется для возврата «названия учебника», идентификатор учебного пособия которого передан веб-методу.
  • По умолчанию необходимо помнить, что все, что передается по URL-адресу в браузере, является строкой.
  • Но вы должны помнить, что индекс в нашем списке должен быть целым числом, поэтому мы добавляем необходимый код, чтобы сначала преобразовать Tutorialid в целое число, а затем использовать его для доступа к позиции индекса в нашем списке и
  • Затем верните значение в вызывающую программу.

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

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

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

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

[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

Шаг 2) Выберите пункт меню «Установить как запускаемый проект». Это гарантирует, что этот проект будет запущен, когда Visual Studio запустит все решение.

Шаг 3) Следующим шагом будет запуск самого проекта. Теперь, в зависимости от браузера по умолчанию, установленного в системе, соответствующее имя браузера будет отображаться рядом с кнопкой запуска в Visual Studio. В нашем случае у нас появляется Google Chrome. Просто нажмите на эту кнопку.

Выход:-

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

В приведенном выше выводе

  • Вы можете видеть, что браузер вызывает команду GET и выполняет метод GetAllTutorial в веб-службе. Этот модуль используется для отображения всех учебных пособий, предоставляемых нашим веб-сервисом.

Тестирование вашего первого веб-сервиса Restful

В приведенном выше разделе мы уже видели, как использовать браузер для выполнения команды «GET» и вызова «GetAllTutorial».

  1. Теперь давайте воспользуемся браузером для выполнения следующего сценария использования.

GET Tutorial / Tutorialid - когда клиент вызывает этот Restful API, ему будет присвоено имя Tutorial, основанное на Tutorialid, отправленном клиентом.

В вашем браузере добавьте строку / 1 после слова Tutorial в URL-адресе. Если вы нажмете кнопку ввода, вы получите следующий результат

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

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

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

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

DELETE Tutorial / Tutorialid - Когда клиент вызывает этот Restful API, клиент отправляет запрос на удаление Tutorialname на основе Tutorialid. Затем веб-служба удалит отправленное имя учебника из коллекции.

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

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

    заявление.

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

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

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

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

Резюме

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