Tutorial de serviços da Web RESTful: o que é API REST com exemplo
O que são serviços da Web repousantes?
Serviços da Web Restful é um serviço leve, de fácil manutenção e escalonável, construído na arquitetura REST. Restful Web Service, expõe a API do seu aplicativo de maneira segura, uniforme e sem estado para o cliente chamador. O cliente chamador pode executar operações predefinidas usando o serviço Restful. O protocolo subjacente para REST é HTTP. REST significa Transferência de Estado Representacional.
Elementos-chave RESTful
Os serviços da Web REST realmente percorreram um longo caminho desde o seu início. Em 2002, o consórcio Web lançou a definição de serviços web WSDL e SOAP. Isso formou o padrão de como os serviços da web são implementados.
Em 2004, o consórcio web também lançou a definição de um padrão adicional chamado RESTful. Nos últimos anos, esse padrão se tornou bastante popular. E está sendo usado por muitos sites populares em todo o mundo, incluindo Facebook e Twitter.
REST é uma forma de acessar recursos que estão em um ambiente específico. Por exemplo, você pode ter um servidor que hospeda documentos, fotos ou vídeos importantes. Todos estes são um exemplo de recursos. Se um cliente, digamos um navegador da web, precisar de algum desses recursos, ele deverá enviar uma solicitação ao servidor para acessar esses recursos. Agora os serviços REST definem uma forma de como esses recursos podem ser acessados.
Os principais elementos de uma implementação RESTful são os seguintes:
- Recursos – O primeiro elemento chave é o próprio recurso. Suponhamos que uma aplicação web em um servidor possua registros de vários funcionários. Vamos supor que a URL do aplicativo web seja http://demo.guru99.com. Agora, para acessar um recurso de registro de funcionário via serviços REST, pode-se emitir o comando http://demo.guru99.com/employee/1 – Este comando informa ao servidor web para fornecer os detalhes do funcionário cujo número de funcionário é 1.
- Solicitar Verbos – Descrevem o que você deseja fazer com o recurso. Um navegador emite um verbo GET para instruir o endpoint que deseja obter dados. No entanto, existem muitos outros verbos disponíveis, incluindo POST, PUT e DELETE. Então no caso do exemplo http://demo.guru99.com/employee/1 , o navegador da Web está, na verdade, emitindo um verbo GET porque deseja obter os detalhes do registro do funcionário.
- Cabeçalhos de solicitação – Estas são instruções adicionais enviadas com a solicitação. Estes podem definir o tipo de resposta necessária ou os detalhes da autorização.
- Corpo da solicitação – Os dados são enviados com a solicitação. Os dados normalmente são enviados na solicitação quando uma solicitação POST é feita aos serviços da web REST. Em uma chamada POST, o cliente informa aos serviços web REST que deseja adicionar um recurso ao servidor. Conseqüentemente, o corpo da solicitação teria os detalhes do recurso que deve ser adicionado ao servidor.
- Corpo de resposta – Este é o corpo principal da resposta. Portanto, em nosso exemplo de API RESTful, se consultarmos o servidor web por meio da solicitação http://demo.guru99.com/employee/1 , o servidor web poderá retornar um documento XML com todos os detalhes do funcionário no Corpo de Resposta.
- Códigos de status de resposta – Esses códigos são os códigos gerais que são retornados junto com a resposta do servidor web. Um exemplo é o código 200 que normalmente é retornado caso não haja erro ao retornar uma resposta ao cliente.
Métodos Repousantes
O diagrama abaixo mostra principalmente todos os verbos (POST, GET, PUT e DELETE) e um exemplo de API REST do que eles significariam.
Vamos supor que temos um serviço web RESTful definido no local. http://demo.guru99.com/employee . Quando o cliente faz qualquer solicitação a este serviço web, ele pode especificar qualquer um dos verbos HTTP normais GET, POST, DELETE e PUT. Abaixo está o que aconteceria se os respectivos verbos fossem enviados pelo cliente.
- POST – Isso seria usado para criar um novo funcionário usando o serviço web RESTful
- ENTRE – Isso seria usado para obter uma lista de todos os funcionários que usam o serviço web RESTful
- PUT – Isso seria usado para atualizar todos os funcionários usando o serviço web RESTful
- EXCLUIR – Isso seria usado para excluir todos os funcionários que usam os serviços RESTful
Vamos dar uma olhada na perspectiva de apenas um único registro. Digamos que haja um registro de funcionário com o número de funcionário 1.
As ações a seguir teriam seus respectivos significados.
- POST – Isso não seria aplicável pois estamos buscando dados do funcionário 1 que já está criado.
- ENTRE – Isso seria usado para obter os detalhes do funcionário com número de funcionário como 1 usando o serviço da web RESTful
- PUT – Isso seria usado para atualizar os detalhes do funcionário com o número de funcionário como 1 usando o serviço da web RESTful
- EXCLUIR – Isto é usado para excluir os detalhes do funcionário com número de funcionário como 1
Por que repousante
Restful ganhou popularidade principalmente devido aos seguintes motivos:
1. Linguagens e ambientes heterogêneos – Esta é uma das razões fundamentais que é a mesma que vimos para SABÃO tão bem.
- Ele permite que aplicativos da web construídos em várias linguagens de programação se comuniquem entre si
- Com a ajuda dos serviços Restful, essas aplicações web podem residir em diferentes ambientes, algumas podem estar em Windows, e outros podem estar no Linux.
Mas no final, não importa qual seja o ambiente, o resultado final deve ser sempre o mesmo, de modo que eles possam conversar entre si. Os serviços da Web Restful oferecem essa flexibilidade para que aplicativos construídos em várias linguagens de programação e plataformas se comuniquem entre si.
A imagem abaixo dá um exemplo de um aplicativo da web que precisa se comunicar com outros aplicativos, como Facebook, Twitter e Google.
Agora, se um aplicativo cliente tivesse que trabalhar com sites como Facebook, Twitter, etc., ele provavelmente teria que saber em qual linguagem o Facebook, o Google e o Twitter são construídos e também em qual plataforma eles são construídos.
Com base nisso, podemos escrever o código de interface para nossa aplicação web, mas isso pode ser um pesadelo.
Facebook, Twitter e Google expõem suas funcionalidades na forma de serviços web Restful. Isso permite que qualquer aplicativo cliente chame esses serviços da web via REST.
2. O evento dos Dispositivos – Hoje em dia tudo precisa funcionar Mobile dispositivos, sejam eles dispositivos móveis, notebooks ou até mesmo sistemas automotivos.
Você consegue imaginar a quantidade de esforço para tentar codificar aplicativos nesses dispositivos para conversar com aplicativos web normais? Novamente, as APIs Restful podem tornar esse trabalho mais simples porque, como mencionado no ponto número 1, você realmente não precisa saber qual é a camada subjacente para o dispositivo.
3. Finalmente é o evento da Nuvem – Tudo está migrando para a nuvem. Os aplicativos estão migrando lentamente para sistemas baseados em nuvem, como em Azure or Amazon. Azure e Amazon fornece muitas APIs baseadas na arquitetura Restful. Portanto, os aplicativos agora precisam ser desenvolvidos de forma que sejam compatíveis com a nuvem. Portanto, como todas as arquiteturas baseadas em nuvem funcionam com base no princípio REST, faz mais sentido que os serviços da Web sejam programados na arquitetura baseada em serviços REST para fazer o melhor uso dos serviços baseados em nuvem.
Repousante Archiarquitetura
Uma aplicação ou arquitetura considerada RESTful ou estilo REST possui as seguintes características
1. Estado e funcionalidade são divididos em recursos distribuídos – Isso significa que cada recurso deve ser acessível através dos comandos HTTP normais de GET, POST, PUT ou DELETE. Portanto, se alguém quiser obter um arquivo de um servidor, deverá ser capaz de emitir a solicitação GET e obter o arquivo. Se quiserem colocar um arquivo no servidor, deverão poder emitir a solicitação POST ou PUT. E, finalmente, se quiserem excluir um arquivo do servidor, poderão emitir a solicitação DELETE.
2. A arquitetura é cliente/servidor, sem estado, em camadas e suporta cache
- Cliente-servidor é a arquitetura típica em que o servidor pode ser o servidor web que hospeda o aplicativo e o cliente pode ser tão simples quanto o navegador web.
- Sem estado significa que o estado do aplicativo não é mantido em REST. Por exemplo, se você excluir um recurso de um servidor usando o comando DELETE, não poderá esperar que as informações de exclusão sejam passadas para a próxima solicitação.
Para garantir que o recurso seja excluído, você precisará emitir a solicitação GET. A solicitação GET seria usada para primeiro obter todos os recursos do servidor. Depois disso, seria necessário verificar se o recurso foi realmente excluído.
Princípios e restrições RESTFul
A arquitetura REST é baseada em algumas características que são elaboradas a seguir. Qualquer serviço web RESTful deve atender às características abaixo para ser denominado RESTful. Essas características também são conhecidas como princípios de design que precisam ser seguidos ao trabalhar com serviços baseados em RESTful.
Este é o requisito mais fundamental de uma arquitetura baseada em REST. Isso significa que o servidor terá um serviço web RESTful que fornecerá a funcionalidade necessária ao cliente. O cliente envia uma solicitação ao serviço web no servidor. O servidor rejeitaria a solicitação ou atenderia e forneceria uma resposta adequada ao cliente.
- Sem estado
O conceito de stateless significa que cabe ao cliente garantir que todas as informações necessárias sejam fornecidas ao servidor. Isso é necessário para que o servidor possa processar a resposta adequadamente. O servidor não deve manter nenhum tipo de informação entre as solicitações do cliente. É uma sequência independente de perguntas e respostas muito simples. O cliente faz uma pergunta, o servidor responde adequadamente. O cliente fará outra pergunta. O servidor não se lembrará do cenário de pergunta-resposta anterior e precisará responder à nova pergunta de forma independente.
- Esconderijo
O conceito de Cache serve para ajudar no problema dos stateless que foi descrito no último ponto. Como cada solicitação do cliente servidor é de natureza independente, às vezes o cliente pode solicitar a mesma solicitação ao servidor novamente. Isso apesar de já ter solicitado isso no passado. Esta solicitação irá para o servidor e o servidor dará uma resposta. Isso aumenta o tráfego na rede. O cache é um conceito implementado no cliente para armazenar solicitações que já foram enviadas ao servidor. Portanto, se a mesma solicitação fosse feita pelo cliente, ao invés de ir para o servidor, ele iria para o cache e obteria as informações necessárias. Isso economiza a quantidade de tráfego de rede de ida e volta do cliente para o servidor.
- Sistema em camadas
O conceito de um sistema em camadas é que qualquer camada adicional, como uma camada de middleware, pode ser inserida entre o cliente e o servidor real que hospeda o serviço da web RESTFul (a camada de middleware é onde toda a lógica de negócios é criada. Este pode ser um serviço extra criado com o qual o cliente poderia interagir antes de fazer uma chamada para o serviço da web.). Mas a introdução desta camada precisa ser transparente para não atrapalhar a interação entre o cliente e o servidor.
- Interface/Contrato Uniforme
Esta é a técnica subjacente de como os serviços da web RESTful devem funcionar. RESTful funciona basicamente na camada web HTTP e usa os verbos-chave abaixo para trabalhar com recursos no servidor
- POST – Para criar um recurso no servidor
- GET – Para recuperar um recurso do servidor
- PUT – Para alterar o estado de um recurso ou atualizá-lo
- DELETE – Para remover ou excluir um recurso do servidor
Crie seu primeiro serviço web Restful em ASP.NET
Agora neste tutorial da API REST, aprenderemos como criar um serviço web Restful em ASP.NET:
Os serviços da Web podem ser criados em vários idiomas. Muitos ambientes de desenvolvimento integrado podem ser usados para criar serviços baseados em REST.
Neste exemplo de API RESTful, vamos criar nosso aplicativo REST em .Net usando Visual Studio. Em nosso exemplo, para serviços web Restful, emularemos o seguinte exemplo de serviço REST.
Teremos um serviço web Restful que funcionará no conjunto de dados abaixo.
O conjunto de dados abaixo representa um exemplo de API REST de ter uma empresa que expõe os Tutoriais que possui com base no Tutorialid.
Tutorial | TutorialNome |
---|---|
0 | Arrays |
1 | filas |
2 | Pilhas |
Em nosso exemplo de tutorial da API REST, implementaremos os Restful Verbs abaixo.
- OBTER Tutorial – Quando um cliente invoca esta API Restful, ele receberá todo o conjunto de tutoriais disponíveis no serviço web.
- OBTER Tutorial/Tutorialid – Quando um cliente invoca esta API Restful, ele receberá o nome do Tutorial com base no Tutorialid enviado pelo cliente.
- POST Tutorial/Tutorialnome – Quando um cliente invoca esta API Restful, o cliente enviará uma solicitação para inserir um Tutorialname. O serviço web adicionará então o nome do Tutorial enviado à coleção.
- EXCLUIR Tutorial/Tutorialid– Quando um cliente invoca esta API Restful, o cliente enviará uma solicitação para excluir um Tutorialname com base no Tutorialid. O serviço web excluirá o nome do Tutorial enviado da coleção.
Vamos seguir as etapas abaixo neste tutorial da API RESTful para criar nossos primeiros serviços web RESTful, que realizam a implementação acima.
Como criar seu primeiro serviço Web tranquilo
Passo 1) Criar novo projeto.
O primeiro passo é criar um vazio Asp.Net Aplicativo web. No Visual Studio 2013, clique na opção de menu Arquivo->Novo projeto.
Ao clicar na opção Novo Projeto, o Visual Studio fornecerá outra caixa de diálogo para escolher o tipo de projeto e fornecer os detalhes necessários do projeto. Isso é explicado na próxima etapa deste tutorial da API RESTful
Passo 2) Insira o nome e o local do projeto.
- Certifique-se de escolher primeiro os serviços da web RESTful C# modelo web do aplicativo Web ASP.NET. O projeto deve ser deste tipo para criar um projeto de serviços web. Ao escolher essas opções, o Visual Studio executará as etapas necessárias para adicionar os arquivos necessários para qualquer aplicativo baseado na Web.
- Dê um nome ao seu projeto que no nosso caso foi dado como “Webservice.REST”.
- Em seguida, certifique-se de fornecer um local onde os arquivos do projeto serão armazenados.
Uma vez feito isso, você verá o arquivo do projeto criado em seu gerenciador de soluções no Visual Studio 2013.
Passo 3) Crie o arquivo de serviço da web.
A próxima etapa é criar o arquivo do serviço web que terá o serviço web RESTful
- Primeiro clique com o botão direito no arquivo do projeto conforme mostrado abaixo
- Nesta etapa,
- Clique com o botão direito no arquivo do projeto
- Escolha a opção “Adicionar->novo item”.
Na caixa de diálogo que aparece, você precisa realizar o seguinte
- Escolha a opção de Serviço WCF (habilitado para Ajax) – Escolha um arquivo deste tipo, isso faz com que o Visual studio para adicionar algum código básico que ajude a criar um serviço web RESTful. WCF significa Windows Comunicação Foundation. WCF é uma biblioteca para aplicações de várias plataformas ou a mesma plataforma para comunicar sobre os vários protocolos, como TCP, HTTP, HTTPS. Ajax é basicamente assíncrono JavaScript e XML. AJAX permite que páginas da web sejam atualizadas de forma assíncrona, trocando pequenas quantidades de dados com o servidor nos bastidores.
- Em seguida, dê um nome para o serviço que é TutorialService no nosso caso.
- Por fim, clique no botão Adicionar para adicionar o serviço à solução.
Passo 4) Faça uma configuração.
A próxima etapa é realmente fazer uma alteração na configuração para permitir que este projeto conclua o trabalho com serviços da web RESTful. Isso requer fazer uma alteração no arquivo chamado web.config. Este arquivo aparece na mesma janela do arquivo do projeto Webservice. O arquivo Web.config contém todas as configurações que fazem a aplicação web funcionar como deveria. A mudança feita permite que o aplicativo envie e receba dados como um serviço web RESTful puro.
- Clique no arquivo Web.config para abrir o código
- Encontre a linha
- Mude a linha para
Passo 5) Adicione nosso código para implementação.
A próxima etapa neste tutorial da API RESTful é adicionar nosso código para implementação. Todo o código mencionado abaixo deve ser escrito no arquivo TutorialService.svc
- A primeira parte é adicionar código para representar nossos dados que serão utilizados em nosso programa. Então teremos uma lista de variáveis string com valores de “Arrays”, “Queues” e “Stacks”. Isto representará o nome dos tutoriais disponíveis através do nosso serviço de hospedagem web.
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"});
Passo 6) Defina o código para nosso método GET.
A seguir definiremos o código do nosso método GET. Este código também residirá no mesmo arquivo TutorialService.svc. Este código será executado sempre que chamarmos o serviço em nosso navegador.
O método abaixo será usado para cumprir o cenário mencionado abaixo
- Se um usuário quiser uma lista de todos os tutoriais disponíveis, o código abaixo precisará ser escrito para fazer isso.
[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; }
Explicação do código: -
- A primeira linha de código é a mais importante. É usado para definir como podemos chamar este método através de uma URL. Então, se o link para o nosso serviço web for http://localhost:52645/TutorialService.svc e se anexarmos '/Tutorial' ao URL como http://localhost:52645/TutorialService.svc/Tutorial , o código acima será invocado. O atributo 'WebGet' é um parâmetro que permite que este método seja um método RESTful para que possa ser invocado através do verbo GET.
- Esta seção de código é usada para percorrer nossa lista de strings na variável 'lst' e retornar todas elas ao programa de chamada.
Passo 7) Retorne a saída.
O código abaixo garante que, se uma chamada GET for feita ao Serviço de Tutorial com um ID do Tutorial, ele retornará o Nome do Tutorial correspondente com base no ID do Tutorial.
[WebGet (UriTemplate = "/Tutorial/{Tutorialid}")] public String GetTutorialbyID(String Tutorialid) { int pid; Int32.TryParse(Tutorialid, out pid); return lst[pid]; }
Explicação do código: -
- A primeira linha de código é a mais importante. É usado para definir como podemos chamar este método através de uma URL. Então, se o link para o nosso serviço web for http://localhost:52645/TutorialService.svc e se anexarmos '/Tutorial/{Tutorialid}' ao URL, poderemos chamar o serviço da web como http://localhost:52645/TutorialService.svc/Tutorial/1 como um exemplo. O serviço web precisaria então retornar o nome do Tutorial que tinha o ID do Tutorial#1.
- Esta seção de código é usada para retornar o “Nome do Tutorial” que tem o ID do Tutorial passado para o método web.
- Por padrão, o que precisa ser lembrado é que tudo o que é passado para a URL no navegador é uma string.
- Mas você deve lembrar que o índice da nossa lista deve ser um número inteiro, por isso estamos adicionando o código necessário para primeiro converter o Tutorialid em um número inteiro e depois usá-lo para acessar a posição do índice em nossa lista e
- Em seguida, retorne o valor ao programa de chamada de acordo.
Passo 8) Escreva o código para o método POST.
A próxima etapa é escrever o código do nosso método POST. Este método será invocado sempre que quisermos adicionar um valor string à nossa lista de Tutoriais através do método POST. Por exemplo, se você quiser adicionar o nome do Tutorial “Teste de Software”, você precisará usar o método POST.
Explicação do código: -
- A primeira linha é o atributo 'WebInvoke' que foi anexado ao nosso método. Isso permite que o método seja invocado por meio da chamada POST. Os atributos RequestFormat e ResponseFormat devem ser mencionados como JSON, pois ao postar valores em um web service RESTFul, os valores devem estar neste formato.
- A segunda linha de código é usada para adicionar o valor da string passado por meio da chamada POST à nossa lista existente de strings do Tutorial.
Passo 9) Adicione um método para lidar com a operação DELETE.
Finalmente adicionaremos nosso método para lidar com a operação DELETE. Este método será invocado sempre que quisermos excluir um valor de string existente de nossa lista de Tutoriais através do método DELETE.
[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); }
Explicação do código: -
- A primeira linha é o atributo 'WebInvoke' que foi anexado ao nosso método. Isso permite que o método seja invocado por meio da chamada POST. Os atributos RequestFormat e ResponseFormat devem ser mencionados como JSON, pois ao postar valores em um web service RESTFul, os valores devem estar neste formato. Observe que o parâmetro Method está sendo definido como “DELETE”. Isso significa que sempre que emitirmos o verbo DELETE, este método será invocado.
- A segunda linha de código é usada para pegar o Tutorialid enviado por meio da chamada DELETE e posteriormente excluir esse id de nossa lista. (O Intxnumx função no código é usada para converter o ID do tutorial de uma variável de string em um número inteiro).
Executando seu primeiro serviço web Restful
Agora que criamos todo o nosso serviço web na seção acima. Vamos ver como podemos executar o serviço Tutorial para que possa ser invocado a partir de qualquer cliente.
Para executar o serviço web, siga as etapas abaixo
Passo 1) Clique com o botão direito no arquivo do projeto – Webservice.REST
Passo 2) Escolha a opção de menu 'Definir como projeto de inicialização'. Isso garantirá que este projeto seja executado quando o Visual Studio executar toda a solução
Passo 3) O próximo passo é executar o projeto em si. Agora, dependendo do navegador padrão instalado no sistema, o nome do navegador apropriado aparecerá ao lado do botão executar no Visual Studio. No nosso caso, temos Google Chrome aparecendo. Basta clicar neste botão.
Resultado:-
Quando o projeto for executado, você pode navegar até a seção TutorialService.svc/Tutorial e obterá a saída abaixo.
Na saída acima,
- Você pode ver que o navegador está invocando o verbo ‘GET’ e executando o método ‘GetAllTutorial’ no serviço web. Este módulo é utilizado para exibir todos os Tutoriais expostos pelo nosso serviço web.
Testando seu primeiro serviço web Restful
Na seção acima, já vimos como usar o navegador para executar o verbo ‘GET’ e invocar o ‘GetAllTutorial’.
- Vamos agora usar o navegador para executar o seguinte cenário de caso de uso.
GET Tutorial/Tutorialid – Quando um cliente invoca esta API Restful, ele receberá o nome do Tutorial com base no Tutorialid enviado pelo cliente
No seu navegador, anexe a string /1 após a palavra Tutorial no URL. Se você clicar no botão Enter, obterá a saída abaixo
Agora você verá a saída de Queues que na verdade corresponde ao número 1 em nossa lista de Tutorial Strings. Isso significa que o método 'GetTutorialbyID' agora está sendo invocado em nosso Webservice. Também mostra que o valor 1 está sendo passado com sucesso através do navegador para nosso serviço web e para nosso método e é por isso que estamos obtendo o valor correspondente correto de “Filas” no navegador.
- A seguir, vamos consumir nosso serviço web executando o cenário abaixo. Para isso, você precisa instalar a ferramenta chamada “Fiddler”que é uma ferramenta que pode ser baixada gratuitamente no site.
POST Tutorial/Tutorialname – Quando um cliente invoca esta API Restful, o cliente enviará uma solicitação para inserir um Tutorialname. O serviço web adicionará então o nome do Tutorial enviado à coleção.
Execute a ferramenta Filddler e execute as etapas abaixo;
- Vá para a seção do compositor. Isso é usado para criar solicitações que podem ser enviadas a qualquer aplicativo da web.
- Certifique-se de que o tipo de solicitação seja “POST” e que o URL correto esteja sendo acessado, que no nosso caso deveria ser http://localhost:52645/TutorialService.svc/Tutorial
- Certifique-se de que o Content-Type esteja marcado como application/json. Lembre-se de que nosso método de solicitação POST em nosso serviço Web aceita apenas dados no estilo json, portanto, precisamos garantir que isso seja especificado quando enviarmos uma solicitação para nosso aplicativo.
- Finalmente, precisamos inserir nossos dados. Lembre-se que nosso método para POST aceita um parâmetro chamado 'str.' Então aqui estamos especificando que queremos adicionar um valor chamado “Árvores” à nossa coleção de nomes de Tutoriais e garantir que ele esteja marcado com o nome da variável str.
Por fim, basta clicar no botão Executar no violinista. Isso enviará uma solicitação ao serviço web para POST os dados “Árvores” em nosso serviço web.
Agora, quando navegarmos até a URL do Tutorial para mostrar todas as strings em nossa lista do Tutorial, você verá que o valor de “Árvores” também está presente. Isso mostra que a solicitação POST para o serviço web foi executada com sucesso e que foi adicionada com sucesso à nossa lista de tutoriais.
- A seguir, vamos consumir nosso serviço web executando o cenário abaixo. Para isso também precisamos usar a ferramenta violinista
DELETE Tutorial/Tutorialid- Quando um cliente invoca esta API Restful, o cliente enviará uma solicitação para excluir um Tutorialname com base no Tutorialid. O serviço web excluirá o nome do Tutorial enviado da coleção.
Execute a ferramenta Filddler e execute as etapas abaixo
- Vá para a seção do compositor. Isso é usado para criar solicitações que podem ser enviadas a qualquer aplicativo da web.
- Certifique-se de que o tipo de solicitação seja “DELETE” e que o URL correto esteja sendo acessado, que no nosso caso deveria ser http://localhost:52645/TutorialService.svc/Tutorial. Certifique-se de que o id que é usado para excluir uma string da lista seja enviado via URL como parâmetro. Em nosso exemplo REST, estamos enviando 1, então isso excluirá os 2nd elemento em nossa coleção que é “Filas”.
Por fim, basta clicar no botão Executar no violinista. Isso enviará uma solicitação ao serviço web para EXCLUIR os dados “Filas” do nosso serviço web.
Agora, quando navegarmos até a URL do Tutorial para mostrar todas as strings em nossa lista do Tutorial, você notará que o valor de “Filas” não está mais presente.
Isso mostra que a solicitação DELETE para o serviço web foi executada com sucesso. O elemento no índice número 1 em nossa lista de strings do Tutorial foi excluído com sucesso.
Resumo
- REST significa Transferência de Estado Representacional. REST é usado para construir serviços da web que são leves, fáceis de manter e escalonáveis por natureza.
- Cada vez mais aplicativos estão migrando para a arquitetura Restful. Isso ocorre porque agora há muitas pessoas usando dispositivos móveis e uma variedade maior de aplicativos migrando para a nuvem.
- Os principais aspectos do REST são os recursos que residem no servidor e os verbos GET, POST, PUT e DELETE, que podem ser utilizados para trabalhar com esses recursos.
- Visual Studio e .Net podem ser usados para criar serviços da web Restful.
- Quando Ensaios serviços web para POST e PUT, você precisa usar outra ferramenta chamada fiddler, que pode ser usada para enviar a solicitação POST e PUT ao servidor.