Какво е Restful Web Services?
Restful Web Services е лека, поддържаема и мащабируема услуга, която е изградена върху REST архитектурата. Спокойна уеб услуга, изложете API от вашето приложение по сигурен, унифициран начин без гражданство на повикващия клиент. Клиентът, който се обажда, може да извършва предварително дефинирани операции, като използва услугата Restful. Основният протокол за REST е HTTP. REST означава репрезентативен държавен трансфер.
В този урок за REST API ще научите -
- RESTful ключови елементи
- Спокойни методи
- Защо Restful
- Спокойна архитектура
- Принципи и ограничения на RestFul
- Създайте първата си уеб услуга Restful в ASP.NET
- Стартиране на първата ви уеб услуга Restful
- Тестване на първата ви уеб услуга Restful
RESTful ключови елементи
Уеб услугите на REST наистина са изминали дълъг път от създаването си. През 2002 г. уеб консорциумът пусна дефиницията за WSDL и SOAP уеб услуги. Това формира стандарта за прилагане на уеб услугите.
През 2004 г. уеб консорциумът пусна и дефиницията на допълнителен стандарт, наречен RESTful. През последните няколко години този стандарт стана доста популярен. И се използва от много от популярните уебсайтове по света, които включват Facebook и Twitter.
REST е начин за достъп до ресурси, които се намират в определена среда. Например, може да имате сървър, който може да хоства важни документи или снимки или видеоклипове. Всичко това е пример за ресурси. Ако клиент, да речем, че уеб браузър се нуждае от някой от тези ресурси, той трябва да изпрати заявка до сървъра за достъп до тези ресурси. Сега REST услугите определят начин за достъп до тези ресурси.
Основните елементи на изпълнението на RESTful са както следва:
-
Ресурси - Първият ключов елемент е самият ресурс. Нека приемем, че уеб приложението на сървър има записи на няколко служители. Да приемем, че URL адресът на уеб приложението е http://demo.guru99.com . Сега, за да получите достъп до ресурс за запис на служител чрез REST услуги, можете да издадете командата http://demo.guru99.com/employee/1 - Тази команда казва на уеб сървъра да предостави подробности за служителя, чийто номер на служител 1.
-
Заявка за глаголи - Те описват какво искате да направите с ресурса. Браузър издава GET глагол, за да инструктира крайната точка, която иска да получи данни. Има обаче много други глаголи, включително неща като POST, PUT и DELETE. Така че в случая с примера http://demo.guru99.com/employee/1 , уеб браузърът всъщност издава GET Verb, защото иска да получи подробности за записа на служителя.
-
Заглавки на заявката - Това са допълнителни инструкции, изпратени заедно със заявката. Те могат да определят вида на необходимия отговор или подробностите за упълномощаването.
-
Тяло на заявката - данните се изпращат заедно със заявката. Данните обикновено се изпращат в заявката, когато се прави POST заявка до REST уеб услугите. При POST повикване клиентът всъщност казва на REST уеб услугите, че иска да добави ресурс към сървъра. Следователно тялото на заявката ще има подробности за ресурса, който се изисква да бъде добавен към сървъра.
-
Тяло за отговор - Това е основното тяло на отговора. Така че в нашия пример за RESTful API, ако трябваше да направим запитване към уеб сървъра чрез заявката http://demo.guru99.com/employee/1 , уеб сървърът може да върне XML документ с всички подробности за служителя в Response Тяло.
-
Кодове на състоянието на отговора - Тези кодове са общите кодове, които се връщат заедно с отговора от уеб сървъра. Пример е кодът 200, който обикновено се връща, ако няма грешка при връщане на отговор на клиента.
Спокойни методи
Диаграмата по-долу показва най-вече всички глаголи (POST, GET, PUT и DELETE) и пример за REST API за това какво биха означавали.
Да приемем, че имаме RESTful уеб услуга, дефинирана на мястото. http://demo.guru99.com/employee . Когато клиентът направи някаква заявка към тази уеб услуга, той може да посочи всеки от нормалните HTTP глаголи на GET, POST, DELETE и PUT. По-долу е какво би се случило, ако съответните глаголи са изпратени от клиента.
- POST - Това ще се използва за създаване на нов служител, използващ уеб услугата RESTful
- GET - Това ще се използва за получаване на списък на всички служители, използващи уеб услугата RESTful
- PUT - Това ще се използва за актуализиране на всички служители, използващи уеб услугата RESTful
- ИЗТРИВАНЕ - Това ще се използва за изтриване на всички служители, използващи услугите RESTful
Нека погледнем от гледна точка на само един запис. Да приемем, че имаше запис на служител с номер на служителя 1.
Следващите действия ще имат своите съответни значения.
- POST - Това не би било приложимо, тъй като извличаме данни на служител 1, които вече са създадени.
- GET - Това ще се използва, за да се получат данните за служителя със служител № 1 като се използва уеб услугата RESTful
- PUT - Това ще се използва за актуализиране на данните за служителя със служител № 1 като се използва уеб услугата RESTful
- ИЗТРИВАНЕ - Използва се за изтриване на данните за служителя със служител № 1
Защо Restful
Restful най-вече стана популярен поради следните причини:
- Хетерогенни езици и среди - Това е една от основните причини, която е същата, както видяхме и за SOAP.
- Той позволява на уеб приложенията, които са изградени на различни програмни езици, да комуникират помежду си
- С помощта на услугите Restful тези уеб приложения могат да се намират в различни среди, някои може да са под Windows, а други да са под Linux.
Но в крайна сметка, без значение каква е средата, крайният резултат винаги трябва да бъде един и същ, за да могат да говорят помежду си. Спокойните уеб услуги предлагат тази гъвкавост на приложения, изградени на различни програмни езици и платформи, за да говорят помежду си.
Картината по-долу дава пример за уеб приложение, което има изискване да говори с други приложения като Facebook, Twitter и Google.
Сега, ако дадено клиентско приложение трябва да работи със сайтове като Facebook, Twitter и т.н., те вероятно ще трябва да знаят на какъв език са изградени Facebook, Google и Twitter, както и на каква платформа са изградени.
Въз основа на това можем да напишем интерфейсния код за нашето уеб приложение, но това може да се окаже кошмар.
Facebook, Twitter и Google излагат своята функционалност под формата на уеб услуги Restful. Това позволява на всяко клиентско приложение да извиква тези уеб услуги чрез REST.
- Събитието на устройствата - В днешно време всичко трябва да работи на мобилни устройства, независимо дали това е мобилното устройство, преносимите компютри или дори автомобилните системи.
Можете ли да си представите количеството усилия, за да опитате да кодирате приложения на тези устройства, за да говорите с нормални уеб приложения? Отново Restful API могат да направят тази работа по-опростена, тъй като, както беше споменато в точка № 1, наистина не е нужно да знаете какъв е основният слой за устройството.
- И накрая е събитието на облака - Всичко се премества в облака. Приложенията бавно преминават към базирани на облак системи като Azure или Amazon. Azure и Amazon предоставят много API, базирани на Restful архитектурата. Следователно приложенията сега трябва да бъдат разработени по такъв начин, че да бъдат направени съвместими с облака. Така че, тъй като всички архитектури, базирани на облак, работят на принципа REST, има по-голям смисъл уеб услугите да бъдат програмирани на архитектурата, базирана на услугите REST, за да се използват най-добре услугите, базирани на облак.
Спокойна архитектура
Приложение или архитектура, считано за RESTful или REST стил, има следните характеристики
- Състоянието и функционалността са разделени на разпределени ресурси - Това означава, че всеки ресурс трябва да бъде достъпен чрез нормалните HTTP команди на GET, POST, PUT или DELETE. Така че, ако някой иска да получи файл от сървър, той трябва да може да издаде GET заявката и да получи файла. Ако искат да поставят файл на сървъра, те трябва да могат да издадат заявката POST или PUT. И накрая, ако искат да изтрият файл от сървъра, те издават заявката DELETE.
- Архитектурата е клиент / сървър, без състояние, слоеста и поддържа кеширане -
- Клиент-сървърът е типичната архитектура, при която сървърът може да бъде уеб сървърът, хостващ приложението, а клиентът може да бъде толкова прост, колкото уеб браузърът.
- Без гражданство означава, че състоянието на приложението не се поддържа в REST.
Например, ако изтриете ресурс от сървър с помощта на командата DELETE, не можете да очаквате информацията за изтриване да бъде предадена на следващата заявка.
За да сте сигурни, че ресурсът е изтрит, ще трябва да подадете заявката GET. Заявката GET ще се използва за първо получаване на всички ресурси на сървъра. След което ще трябва да се види дали ресурсът всъщност е бил изтрит.
RESTПълни принципи и ограничения
Архитектурата REST се основава на няколко характеристики, които са описани по-долу. Всяка уеб услуга RESTful трябва да отговаря на характеристиките по-долу, за да може да бъде наречена RESTful. Тези характеристики са известни и като принципи на проектиране, които трябва да се спазват при работа с базирани на RESTful услуги.
- RESTFul Client-Server
Това е най-основното изискване на REST базирана архитектура. Това означава, че сървърът ще има RESTful уеб услуга, която ще предостави необходимата функционалност на клиента. Клиентът изпраща заявка до уеб услугата на сървъра. Сървърът или ще отхвърли заявката, или ще се съобрази и ще предостави адекватен отговор на клиента.
- Без гражданство
Концепцията за липса на държава означава, че клиентът трябва да гарантира, че цялата необходима информация се предоставя на сървъра. Това е необходимо, за да може сървърът да обработи отговора по подходящ начин. Сървърът не трябва да поддържа каквато и да е информация между заявките от клиента. Това е много проста независима последователност въпрос-отговор. Клиентът задава въпрос, сървърът отговаря по подходящ начин. Клиентът ще зададе друг въпрос. Сървърът няма да запомни предишния сценарий с отговор на въпроса и ще трябва да отговори на новия въпрос самостоятелно.
- Кеш памет
Концепцията на кеша е да помогне за проблема с без гражданство, който беше описан в последната точка. Тъй като всяка заявка за клиент на сървър е независима по своята същност, понякога клиентът може отново да поиска от сървъра същата заявка. Това е, въпреки че вече е поискало това в миналото. Тази заявка ще отиде на сървъра и сървърът ще даде отговор. Това увеличава трафика в мрежата. Кешът е концепция, внедрена в клиента за съхраняване на заявки, които вече са изпратени до сървъра. Така че, ако същата заявка е дадена от клиента, вместо да отиде на сървъра, тя ще отиде в кеша и ще получи необходимата информация. Това спестява количеството мрежов трафик от клиента към сървъра.
- Слоеста система
Концепцията на слоестата система е, че всеки допълнителен слой като междинен софтуер може да бъде вмъкнат между клиента и действителния сървър, хостващ уеб услугата RESTFul (Междинният слой е мястото, където се създава цялата бизнес логика. Това може да бъде допълнителна услуга създаден, с който клиентът може да взаимодейства, преди да се обади на уеб услугата.). Но въвеждането на този слой трябва да бъде прозрачно, така че да не нарушава взаимодействието между клиента и сървъра.
- Интерфейс / Унифициран договор
Това е основната техника за това как трябва да работят уеб услугите 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.
Туторалид | TutorialName |
0 | Масиви |
1 | Опашки |
2 | Стекове |
В нашия пример за урок на REST API ще приложим долните Restful Verbs.
- GET Tutorial - Когато клиент извика този Restful API, той ще получи целия набор от уроци, налични от уеб услугата.
- GET Tutorial / Tutorialid - Когато клиент извика този Restful API, той ще получи името на урока въз основа на Tutorialid, изпратено от клиента.
- POST Tutorial / Tutorialname - Когато клиент извика този Restful API, клиентът ще подаде заявка за вмъкване на име на урок. След това уеб услугата ще добави изпратеното име на урока към колекцията.
- DELETE Tutorial / Tutorialid - Когато клиент извика този Restful API, клиентът ще подаде заявка за изтриване на име на урока въз основа на Tutorialid. След това уеб услугата ще изтрие изпратеното име на урока от колекцията.
Нека следваме стъпките по-долу в този урок за RESTful API, за да създадем нашите първи RESTful уеб услуги, които извършват горното внедряване.
Стъпка 1) Първата стъпка е да създадете празно уеб приложение Asp.Net. От Visual Studio 2013 кликнете върху опцията от менюто Файл-> Нов проект.
След като щракнете върху опцията Нов проект, Visual Studio ще ви даде друг диалогов прозорец за избор на вида на проекта и за предоставяне на необходимите подробности за проекта. Това е обяснено в следващата стъпка на този урок за RESTful API
Стъпка 2) В тази стъпка,
- Уверете се, че първо сте избрали уеб шаблона RESTful уеб услуги C # на уеб приложението ASP.NET. Проектът трябва да бъде от този тип, за да се създаде проект за уеб услуги. Избирайки тези опции, Visual Studio след това ще извърши необходимите стъпки за добавяне на необходимите файлове, които се изискват от всяко уеб-базирано приложение.
- Дайте име на вашия проект, който в нашия случай е даден като "Webservice.REST".
- След това се уверете, че сте дали място, където ще се съхраняват файловете на проекта.
След като приключите, ще видите файла на проекта, създаден във вашия изследовател на решения в Visual Studio 2013.
Стъпка 3) Следващата стъпка е да създадете файл на уеб услугата, който ще има RESTful уеб услугата
- Първо щракнете с десния бутон върху файла на проекта, както е показано по-долу
- В тази стъпка
- Щракнете с десния бутон върху файла на проекта
- Изберете опцията „Добавяне-> нов елемент“.
В диалоговия прозорец, който се появява, трябва да извършите следното
- Изберете опцията за WCF услуга (с активиран Ajax) - Изберете файл от този тип, той ще накара Visual Studio да добави основен код, който помага да се създаде RESTful уеб услуга. WCF означава Windows Communication Foundation. WCF е библиотека за приложения на различни платформи или същата платформа за комуникация през различните протоколи като TCP, HTTP, HTTPS. Ajax основно е асинхронен JavaScript и XML. AJAX позволява уеб страниците да се актуализират асинхронно чрез обмен на малки количества данни със сървъра зад кулисите.
- След това дайте име на услугата, която е TutorialService в нашия случай.
- Накрая щракнете върху бутона Добави, за да добавите услугата към решението.
Стъпка 4) Следващата стъпка е всъщност да направите промяна на конфигурацията, за да позволите на този проект да завърши работата си с RESTful уеб услуги. Това изисква да се направи промяна във файла, наречен Web.config . Този файл се появява в същия прозорец като проектния файл на Webservice. Файлът Web.config съдържа всички конфигурации, които карат уеб приложението да работи както трябва. Направената промяна всъщност позволява на приложението да изпраща и получава данни като чиста RESTful уеб услуга.
- Кликнете върху файла Web.config, за да отворите кода
- Намерете за реда
- Променете реда на
Стъпка 5) Следващата стъпка в този урок за RESTful API е да добавите нашия код за изпълнение. Всички по-долу споменати кодове трябва да бъдат написани във файла TutorialService.svc
- Първият бит е да добавите код, който да представлява нашите данни, които ще бъдат използвани в нашата програма. Така че ще имаме списък с низови променливи със стойности на "масиви", "опашки" и "стекове". Това ще представлява името на уроците, достъпно чрез нашата уеб хостинг услуга.
namespace Webservice.REST{[ServiceContract(Namespace = "")][AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowedpublic class TutorialService{private static Listlst = 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;}
Обяснение на кода: -
- Първият ред код е най-важен. Използва се за определяне на начина, по който можем да извикаме този метод чрез URL. Така че, ако връзката към нашата уеб услуга е http: // localhost: 52645 / TutorialService.svc и ако добавим '/ Tutorial' към URL адреса като http: // localhost: 52645 / TutorialService.svc / Tutorial , горният код ще бъде извикана. Атрибутът на 'WebGet' е параметър, който позволява този метод да бъде RESTful метод, така че да може да бъде извикан чрез глагола GET.
- Този раздел на кода се използва, за да премине през нашия списък от низове в променливата 'lst' и да ги върне в извикващата програма.
Стъпка 7) Кодът по-долу гарантира, че ако се извърши GET повикване до Учителската служба с идентификатор на урока, тогава той ще върне съответното име на урока въз основа на идентификатора на урока.
[WebGet (UriTemplate = "/Tutorial/{Tutorialid}")]public String GetTutorialbyID(String Tutorialid){int pid;Int32.TryParse(Tutorialid, out pid);return lst[pid];}
Обяснение на кода: -
- Първият ред код е най-важен. Използва се за определяне на начина, по който можем да извикаме този метод чрез URL. Така че, ако връзката към нашата уеб услуга е http: // localhost: 52645 / TutorialService.svc и ако добавим '/ Tutorial / {Tutorialid}' към URL адреса, тогава ще можем да извикаме уеб услугата като http: // //localhost:52645/TutorialService.svc/Tutorial/1 като пример. След това уеб услугата ще трябва да върне името на урока, което е имало идентификатор на урока №1.
- Този раздел на кода се използва за връщане на "Името на урока", което има идентификатора на урока, предаден на уеб метода.
- По подразбиране това, което трябва да се запомни, е, че всичко, което се предава на URL адреса в браузъра, е низ.
- Но трябва да запомните, че индексът в нашия списък трябва да бъде цяло число, затова добавяме необходимия код, за да преобразуваме първо Tutorialid в цяло число и след това да го използваме за достъп до позицията на индекса в нашия списък и
- След това върнете стойността на съответната програма.
Стъпка 8) Следващата стъпка е да напишете кода за нашия метод POST. Този метод ще бъде извикан всеки път, когато искаме да добавим низова стойност към нашия списък с уроци чрез метода POST. Например, ако искате да добавите името на урока на „Тестване на софтуер“, тогава ще трябва да използвате метода POST.
Обяснение на кода: -
- Първият ред е атрибутът „WebInvoke“, който е прикачен към нашия метод. Това позволява методът да бъде извикан чрез POST повикване. Атрибутът RequestFormat и ResponseFormat трябва да бъдат посочени като JSON, тъй като при публикуване на стойности в уеб услуга RESTFul стойностите трябва да бъдат в този формат.
- Вторият ред код се използва за добавяне на стойността на низа, предадена чрез извикването POST към нашия съществуващ списък с низове от уроци.
Стъпка 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);}
Обяснение на кода: -
- Първият ред е атрибутът „WebInvoke“, който е прикачен към нашия метод. Това позволява методът да бъде извикан чрез POST повикване. Атрибутът RequestFormat и ResponseFormat трябва да бъдат споменати като JSON, тъй като когато се публикуват стойности в уеб услуга RESTFul, стойностите трябва да бъдат в този формат. Обърнете внимание, че параметърът на метода се задава на „ИЗТРИВАНЕ“. Това означава, че всеки път, когато издадем глагола DELETE, този метод ще бъде извикан.
- Вторият ред код се използва за вземане на Tutorialid, изпратено чрез повикване DELETE и впоследствие изтриване на този идентификатор от нашия списък. (Функцията Int32 в кода се използва за преобразуване на идентификатора на урока от променлива в низ в цяло число).
Стартиране на първата ви уеб услуга Restful
След като създадохме цялата си уеб услуга в горния раздел. Нека да видим как можем да стартираме услугата за уроци, така че да може да бъде извикана от всеки клиент.
За да стартирате уеб услугата, моля, следвайте стъпките по-долу
Стъпка 1) Щракнете с десния бутон върху файла на проекта - Webservice.REST
Стъпка 2) Изберете опцията от менюто „Задай като стартиращ проект“. Това ще гарантира, че този проект се изпълнява, когато Visual Studio изпълни цялото решение
Стъпка 3) Следващата стъпка е да стартирате самия проект. Сега в зависимост от браузъра по подразбиране, инсталиран в системата, съответното име на браузъра ще се появи до бутона за изпълнение в Visual Studio. В нашия случай се показва Google Chrome. Просто кликнете върху този бутон.
Изход: -
Когато проектът се изпълни, можете да прегледате раздела си TutorialService.svc / Tutorial и ще получите изхода по-долу.
В горния изход,
- Можете да видите, че браузърът извиква глагола „GET“ и изпълнява метода „GetAllTutorial“ в уеб услугата. Този модул се използва за показване на всички уроци, изложени от нашата уеб услуга.
Тестване на първата ви уеб услуга Restful
В горния раздел вече видяхме как да използваме браузъра за изпълнение на глагола „GET“ и извикване на „GetAllTutorial“.
- Нека сега използваме браузъра, за да изпълним следния сценарий на употреба.
GET Tutorial / Tutorialid - Когато клиент извика този Restful API, той ще получи името на урока въз основа на Tutorialid, изпратен от клиента
Във вашия браузър добавете низа / 1 след учебната дума в URL адреса. Ако натиснете бутона за въвеждане, ще получите изхода по-долу
Сега ще видите изхода на Queues, който всъщност съответства на номер 1 в нашия списък с низове за урок Това означава, че методът „GetTutorialbyID“ сега се извиква от нашата уеб услуга. Това също така показва, че стойността на 1 се предава успешно през браузъра към нашата уеб услуга и към нашия метод и затова получаваме правилната съответстваща стойност на „Опашки“ в браузъра.
- След това нека използваме нашата уеб услуга, като изпълним сценария по-долу. За целта трябва да инсталирате инструмента, наречен „Fiddler“, който е безплатен инструмент за изтегляне от сайта.
POST Tutorial / Tutorialname - Когато клиент извика този Restful API, клиентът ще подаде заявка за вмъкване на име на урок. След това уеб услугата ще добави изпратеното име на урока към колекцията.
Стартирайте инструмента Filddler и изпълнете стъпките по-долу;
- Отидете в секцията за композитор. Това се използва за създаване на заявки, които могат да бъдат изпратени до всяка мрежа
приложение.
- Уверете се, че типът на заявката е "POST" и е ударен правилният URL адрес, който в нашия случай трябва да бъде http: // localhost: 52645 / TutorialService.svc / Tutorial
- Уверете се, че Content-Type е маркиран като application / json. Не забравяйте, че нашият метод за заявка POST в нашата уеб услуга приема само данни в стил json, така че трябва да гарантираме, че това е посочено, когато изпращаме заявка до нашето приложение.
- И накрая, трябва да въведем нашите данни. Не забравяйте, че нашият метод за POST приема параметър, наречен 'str.' И така, тук посочваме, че искаме да добавим стойност, наречена "Дървета" към нашата колекция от имена на уроци и да гарантираме, че тя е маркирана към името на променливата str.
И накрая, просто щракнете върху бутона за изпълнение в скрипт. Това ще изпрати заявка до уеб услугата за POST данните "Дървета" към нашата уеб услуга.
Сега, когато прегледаме URL на урока, за да покажем всички низове в нашия списък с уроци, сега ще видите стойността на "Дървета" също присъства. Това показва, че заявката POST към уеб услугата е изпълнена успешно и че е успешно добавена към нашия списък с уроци.
- След това нека използваме нашата уеб услуга, като изпълним сценария по-долу. За това също трябва да използваме инструмента за скрипци
DELETE Tutorial / Tutorialid - Когато клиент извика този Restful API, клиентът ще подаде заявка за изтриване на име на урока въз основа на Tutorialid. След това уеб услугата ще изтрие изпратеното име на урока от колекцията.
Стартирайте инструмента Filddler и изпълнете стъпките по-долу
- Отидете в секцията за композитор. Това се използва за създаване на заявки, които могат да бъдат изпратени до всяка мрежа
приложение.
- Уверете се, че заявката е от тип "Изтрий" и правилния URL адрес е в хит, който в нашия случай трябва да бъде HTTP: // Localhost: 52645 / TutorialService.svc / начинаещи . Уверете се, че идентификаторът, който се използва за изтриване на низ в списъка, изпратен чрез URL адреса като параметър. В нашия пример REST изпращаме 1, така че това ще изтрие 2- ия елемент в нашата колекция, който е "Опашки".
И накрая, просто щракнете върху бутона за изпълнение в скрипт. Това ще изпрати заявка до уеб услугата за ИЗТРИВАНЕ на данните "Опашки" към нашата уеб услуга.
Сега, когато прегледаме URL на урока, за да покажем всички низове в нашия списък с уроци, ще забележите, че стойността на „Опашки“ вече не присъства.
Това показва, че заявката DELETE към уеб услугата е изпълнена успешно. Елементът с индекс № 1 в нашия списък с низове за уроци беше успешно изтрит.
Обобщение
- REST означава репрезентативен държавен трансфер. REST се използва за изграждане на уеб услуги, които са леки, поддържаеми и мащабируеми по своя характер.
- Все повече приложения преминават към архитектурата Restful. Това е така, защото сега има много хора, които използват мобилни устройства и по-голямо разнообразие от приложения, които се преместват в облака.
- Основните аспекти на REST са ресурсите, които се намират на сървъра и глаголите GET, POST, PUT и DELETE, които могат да се използват за работа с тези ресурси.
- Visual Studio and.Net може да се използва за създаване на уеб услуги Restful.
- Когато тествате уеб услуги за POST и PUT, трябва да използвате друг инструмент, наречен fiddler, който може да се използва за изпращане на POST и PUT заявката до сървъра.