O que é o Restful Web Services?
O Restful Web Services é um serviço leve, sustentável e escalonável que é construído na arquitetura REST. Restful Web Service, exponha a API de seu aplicativo de maneira segura, uniforme e sem estado para o cliente de chamada. O cliente de chamada pode executar operações predefinidas usando o serviço Restful. O protocolo subjacente para REST é HTTP. REST significa Transferência de Estado Representacional.
Neste tutorial da API REST, você aprenderá
- Elementos-chave RESTful
- Métodos de Repouso
- Por que sossegado
- Arquitetura Repousante
- Princípios e restrições RestFul
- Crie seu primeiro serviço da web Restful em ASP.NET
- Executando seu primeiro serviço da web Restful
- Testando seu primeiro serviço da web Restful
Elementos-chave RESTful
Os serviços da Web REST realmente percorreram um longo caminho desde seu início. Em 2002, o consórcio da Web lançou a definição de serviços da Web WSDL e SOAP. Isso formou o padrão de como os serviços da web são implementados.
Em 2004, o consórcio da 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 dos sites populares em todo o mundo, que incluem Facebook e Twitter.
REST é uma forma de acessar recursos que se encontram em um ambiente específico. Por exemplo, você pode ter um servidor que hospeda documentos, fotos ou vídeos importantes. Todos esses são exemplos de recursos. Se um cliente, digamos um navegador da web, precisa de algum desses recursos, ele deve enviar uma solicitação ao servidor para acessar esses recursos. Agora, os serviços REST definem uma maneira 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. Suponha que um aplicativo da web em um servidor tenha registros de vários funcionários. Vamos supor que o URL do aplicativo da web seja http://demo.guru99.com . Agora, para acessar um recurso de registro de funcionário através dos 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
-
Verbos de solicitação - 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 coisas como POST, PUT e DELETE. Portanto, 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 - são instruções adicionais enviadas com a solicitação. Eles 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 para os serviços da web REST. Em uma chamada POST, o cliente realmente diz aos serviços da Web REST que deseja adicionar um recurso ao servidor. Portanto, o corpo da solicitação teria os detalhes do recurso que deve ser adicionado ao servidor.
-
Corpo da resposta - este é o corpo principal da resposta. Portanto, em nosso exemplo de API RESTful, se consultarmos o servidor da web por meio da solicitação http://demo.guru99.com/employee/1 , o servidor da web pode retornar um documento XML com todos os detalhes do funcionário na resposta Corpo.
-
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 da web. Um exemplo é o código 200 que normalmente é retornado se não houver erro ao retornar uma resposta ao cliente.
Métodos de Repouso
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 da web RESTful definido no local. http://demo.guru99.com/employee . Quando o cliente faz qualquer solicitação a este serviço da web, ele pode especificar qualquer um dos verbos HTTP normais de GET, POST, DELETE e PUT. Abaixo segue 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 da web RESTful
- GET - Isso seria usado para obter uma lista de todos os funcionários que usam o serviço da web RESTful
- PUT - Isso seria usado para atualizar todos os funcionários usando o serviço da web RESTful
- DELETE - Isso seria usado para excluir todos os funcionários usando os serviços RESTful
Vamos dar uma olhada a partir da 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á foi criado.
- GET - Isso seria usado para obter os detalhes do funcionário com o número 1 do funcionário usando o serviço da web RESTful
- PUT - Isso seria usado para atualizar os detalhes do funcionário com o número 1 do funcionário usando o serviço da web RESTful
- EXCLUIR - Isso é usado para excluir os detalhes do funcionário com número de funcionário como 1
Por que sossegado
O Restful se tornou popular principalmente pelos seguintes motivos:
- Linguagens e ambientes heterogêneos - este é um dos motivos fundamentais, que também é o mesmo que vimos para o SOAP.
- Ele permite que aplicativos da web que são construídos em várias linguagens de programação se comuniquem entre si
- Com a ajuda dos serviços Restful, esses aplicativos da web podem residir em ambientes diferentes, alguns podem estar no 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 que eles devem ser capazes de se comunicar. Os serviços da Web Restful oferecem essa flexibilidade para aplicativos criados em várias linguagens de programação e plataformas para se comunicarem.
A imagem abaixo mostra 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 funcionar com sites como Facebook, Twitter, etc., eles provavelmente teriam que saber em que linguagem o Facebook, Google e Twitter foram criados, e também em qual plataforma eles foram criados.
Com base nisso, podemos escrever o código de interface para nosso aplicativo da web, mas isso pode ser um pesadelo.
Facebook, Twitter e Google expõem sua funcionalidade na forma de serviços da web Restful. Isso permite que qualquer aplicativo cliente chame esses serviços da web via REST.
- O evento dos Dispositivos - Hoje em dia, tudo precisa funcionar em dispositivos móveis, seja o dispositivo móvel, os notebooks ou mesmo os sistemas do carro.
Você consegue imaginar a quantidade de esforço para tentar codificar aplicativos nesses dispositivos para se comunicar com aplicativos da web normais? Novamente, a API Restful pode tornar esse trabalho mais simples porque, conforme mencionado no ponto 1, você realmente não precisa saber qual é a camada subjacente do dispositivo.
- Finalmente é o evento da nuvem - tudo está se movendo para a nuvem. Os aplicativos estão mudando lentamente para sistemas baseados em nuvem, como no Azure ou Amazon. O Azure e a Amazon fornecem 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 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.
Arquitetura Repousante
Um aplicativo ou arquitetura considerada RESTful ou estilo REST tem as seguintes características
- O estado e a funcionalidade são divididos em recursos distribuídos - Isso significa que todos os recursos devem ser acessíveis por meio dos comandos HTTP normais de GET, POST, PUT ou DELETE. Portanto, se alguém deseja obter um arquivo de um servidor, deve ser capaz de emitir a solicitação GET e obter o arquivo. Se quiserem colocar um arquivo no servidor, eles devem ser capazes de emitir a solicitação POST ou PUT. E, finalmente, se eles quiserem excluir um arquivo do servidor, eles emitem a solicitação DELETE.
- A arquitetura é cliente / servidor, sem estado, em camadas e com suporte para armazenamento em cache -
- Cliente-servidor é a arquitetura típica em que o servidor pode ser o servidor da web que hospeda o aplicativo e o cliente pode ser tão simples quanto o navegador da 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 transmitidas 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 primeiro para obter todos os recursos do servidor. Depois disso, seria necessário ver 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 da web RESTful deve estar de acordo com as características abaixo para ser chamado de 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.
- Cliente-servidor RESTFul
Este é o requisito mais fundamental de uma arquitetura baseada em REST. Isso significa que o servidor terá um serviço da web RESTful que fornecerá a funcionalidade necessária ao cliente. O cliente envia uma solicitação ao serviço da 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 apropriadamente. O servidor não deve manter nenhum tipo de informação entre as solicitações do cliente. É uma sequência de perguntas e respostas independente muito simples. O cliente faz uma pergunta, o servidor responde apropriadamente. O cliente fará outra pergunta. O servidor não se lembrará do cenário anterior de pergunta e resposta e precisará responder à nova pergunta de forma independente.
- Cache
O conceito de Cache é ajudar com o problema de stateless que foi descrito no último ponto. Como cada solicitação do cliente servidor é independente por natureza, às vezes o cliente pode solicitar a mesma solicitação ao servidor novamente. Mesmo que já o tivesse pedido no passado. Essa 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 já enviadas ao servidor. Portanto, se a mesma solicitação for feita pelo cliente, em vez de ir para o servidor, ele irá para o cache e obterá 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. Isso pode ser um serviço extra criado com o qual o cliente pode interagir antes de fazer uma chamada para o serviço da web.). Mas a introdução dessa 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 da 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 para atualizá-lo
- DELETE - Para remover ou excluir um recurso do servidor
Crie seu primeiro serviço da web Restful em ASP.NET
Agora, neste tutorial da API REST, aprenderemos como criar um serviço da Web Restful em ASP.NET:
Os serviços da Web podem ser criados em vários idiomas. Muitos ambientes de desenvolvimento integrados 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 da web Restful, vamos emular o seguinte exemplo de serviço REST.
Teremos um serviço da web Restful que funcionará com o conjunto de dados abaixo.
O conjunto de dados abaixo representa um exemplo de API REST de ter uma empresa que expõe os Tutoriais com base no Tutorialid.
Tutorialid | Nome do tutorial |
0 | Matrizes |
1 | Filas |
2 | Pilhas |
Em nosso exemplo de tutorial de API REST, vamos implementar os verbos de descanso abaixo.
- Tutorial GET - Quando um cliente invoca esta API Restful, ele recebe todo o conjunto de tutoriais disponíveis no serviço web.
- GET Tutorial / Tutorialid - Quando um cliente invoca esta API Restful, ele receberá o nome do Tutorial com base no Tutorialid enviado pelo cliente.
- POST Tutorial / Tutorialname - Quando um cliente chama esta API Restful, o cliente enviará uma solicitação para inserir um Tutorialname. O serviço da web adicionará o nome do tutorial enviado à coleção.
- DELETE Tutorial / Tutorialid- Quando um cliente chama esta API Restful, o cliente enviará uma solicitação para excluir um Tutorialname com base no Tutorialid. O serviço da 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 da Web RESTful, que realiza a implementação acima.
Etapa 1) A primeira etapa é criar um aplicativo Web Asp.Net vazio. No Visual Studio 2013, clique na opção de menu Arquivo-> Novo projeto.
Depois de clicar na opção Novo Projeto, o Visual Studio exibirá 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
Etapa 2) Nesta etapa,
- Certifique-se de primeiro escolher o modelo da Web C # de serviços da Web RESTful do aplicativo da Web ASP.NET. O projeto tem que ser deste tipo para criar um projeto de serviços da web. Ao escolher essas opções, o Visual Studio executará as etapas necessárias para adicionar os arquivos exigidos por qualquer aplicativo baseado na web.
- Dê um nome ao seu projeto que, em nosso caso, foi denominado "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 de projeto criado em seu gerenciador de soluções no Visual Studio 2013.
Etapa 3) A próxima etapa é criar o arquivo de serviço da web que terá o serviço da web RESTful
- Primeiro clique com o botão direito do mouse no arquivo do projeto como 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, faz com que o Visual Studio adicione algum código básico que ajuda a criar um serviço web RESTful. WCF significa Windows Communication Foundation. WCF é uma biblioteca para aplicativos de várias plataformas ou a mesma plataforma para se comunicar por meio de vários protocolos, como TCP, HTTP, HTTPS. Ajax basicamente é JavaScript assíncrono e XML. O AJAX permite que as 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 em nosso caso.
- Por fim, clique no botão Adicionar para adicionar o serviço à solução.
Etapa 4) A próxima etapa é realmente fazer uma mudança na configuração para permitir que este projeto conclua o trabalho com os serviços da Web RESTful. Isso requer uma alteração no arquivo denominado Web.config . Este arquivo aparece na mesma janela que o arquivo de projeto Webservice. O arquivo Web.config contém todas as configurações que fazem o aplicativo da web funcionar como deveria. A mudança que está sendo feita permite que o aplicativo envie e receba dados como um serviço da web RESTful puro.
- Clique no arquivo Web.config para abrir o código
- Encontre para a linha
- Mude a linha para
Etapa 5) 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
- O primeiro bit é adicionar código para representar nossos dados que serão usados em nosso programa. Portanto, teremos uma lista de variáveis de string com valores de "Arrays", "Filas" e "Pilhas". Isso representará o nome dos tutoriais disponíveis por meio de nosso serviço de hospedagem na web.
namespace Webservice.REST{[ServiceContract(Namespace = "")][AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowedpublic class TutorialService{private static Listlst = new List (new String[] {"Arrays","Queues","Stacks"});
Etapa 6) Em seguida, definiremos o código para 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 de nosso navegador.
O método abaixo será usado para cumprir o cenário abaixo mencionado
- 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 esse método por meio de uma URL. Portanto, se o link para nosso serviço da 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 de '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.
Etapa 7) O código a seguir garante que, se uma chamada GET for feita ao serviço de tutorial com um id de 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 esse método por meio de uma URL. Portanto, se o link para nosso serviço da 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 da web precisaria então retornar o nome do tutorial que tinha o ID do tutorial nº 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 da web.
- Por padrão, o que precisa ser lembrado é que tudo o que é passado para a URL no navegador é uma string.
- Mas você tem que lembrar que o índice de nossa lista deve ser um inteiro, então estamos adicionando o código necessário para primeiro converter o Tutorialid em um inteiro e então usá-lo para acessar a posição do índice em nossa lista e
- Em seguida, retorne o valor ao programa de chamada de acordo.
Etapa 8) A próxima etapa é escrever o código para nosso método POST. Este método será invocado sempre que quisermos adicionar um valor de string à nossa lista de Tutoriais por meio do método POST. Por exemplo, se você quiser adicionar o nome do tutorial de "Teste de software", 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 serviço da Web 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.
Etapa 9) 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 por meio do método 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);}
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 serviço da Web RESTFul, os valores devem estar neste formato. Observe que o parâmetro Método está sendo definido como "DELETE". Isso significa que sempre que emitirmos o verbo DELETE, esse método será invocado.
- A segunda linha de código é usada para pegar o Tutorialid enviado por meio da chamada DELETE e, subsequentemente, excluir esse id de nossa lista. (A função Int32 no código é usada para converter o ID do tutorial de uma variável de string em um inteiro).
Executando seu primeiro serviço da 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 ele possa ser invocado de qualquer cliente.
Para executar o serviço da web, siga as etapas abaixo
Etapa 1) Clique com o botão direito no arquivo do projeto - Webservice.REST
Etapa 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
Etapa 3) A próxima etapa é executar o projeto em si. Agora, dependendo do navegador padrão instalado no sistema, o nome do navegador apropriado virá ao lado do botão Executar no Visual Studio. No nosso caso, temos o Google Chrome aparecendo. Basta clicar neste botão.
Resultado:-
Quando o projeto é 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 da web. Este módulo é usado para exibir todos os tutoriais expostos por nosso serviço web.
Testando seu primeiro serviço da web Restful
Na seção acima, já vimos como usar o navegador para executar o verbo 'GET' e invocar o 'GetAllTutorial'.
- Agora vamos 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
Em seu navegador, acrescente a string / 1 após a palavra Tutorial no URL. Se você clicar no botão Enter, obterá o resultado abaixo
Agora você verá a saída de Filas que na verdade corresponde ao número 1 em nossa lista de Sequências de Tutoriais. Isso significa que o método 'GetTutorialbyID' agora está sendo chamado de nosso serviço da Web. Também mostra que o valor de 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.
- Em seguida, vamos consumir nosso serviço da web executando o cenário abaixo. Para isso, você precisa instalar a ferramenta chamada "Fiddler", que é uma ferramenta gratuita que pode ser baixada do site.
POST Tutorial / Tutorialname - Quando um cliente chama esta API Restful, o cliente enviará uma solicitação para inserir um Tutorialname. O serviço da web adicionará 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 web
inscrição.
- Verifique se o tipo de solicitação é "POST" e se o URL correto está sendo acessado, que em nosso caso deve 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 da Web aceita apenas dados de estilo json, portanto, precisamos garantir que isso seja especificado quando estivermos enviando uma solicitação para nosso aplicativo.
- Finalmente, precisamos inserir nossos dados. Lembre-se de que nosso método para POST aceita um parâmetro chamado 'str.' Portanto, aqui estamos especificando que queremos adicionar um valor chamado "Árvores" à nossa coleção de nomes de tutoriais e garantir que ele seja marcado com o nome da variável str.
Finalmente, basta clicar no botão Executar no fiddler. Isso enviará uma solicitação ao serviço da web para POSTAR os dados "Árvores" em nosso serviço da web.
Agora, quando navegamos para a URL do tutorial para mostrar todas as strings em nossa lista de tutoriais, você verá que o valor de "Árvores" também está presente. Isso mostra que a solicitação POST para o serviço da web foi executada com sucesso e que foi adicionada com sucesso à nossa lista de tutoriais.
- Em seguida, vamos consumir nosso serviço da web executando o cenário abaixo. Para isso também precisamos usar a ferramenta fiddler
DELETE Tutorial / Tutorialid- Quando um cliente chama esta API Restful, o cliente enviará uma solicitação para excluir um Tutorialname com base no Tutorialid. O serviço da 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 web
inscrição.
- Verifique se o tipo de solicitação é "DELETE" e se o URL correto está sendo acessado, que em nosso caso deve ser http: // localhost: 52645 / TutorialService.svc / Tutorial . Certifique-se de que o id que é usado para excluir uma string na lista enviada por meio do URL como um parâmetro. No nosso exemplo, REST, estamos enviando 1 para que isso irá excluir o 2 nd elemento em nossa coleção que é "Filas".
Finalmente, basta clicar no botão Executar no fiddler. Isso enviará uma solicitação ao serviço web para EXCLUIR as "Filas" de dados para nosso serviço web.
Agora, quando navegamos para a URL do tutorial para mostrar todas as strings em nossa lista de tutoriais, você notará que o valor de "Filas" não está mais presente.
Isso mostra que a solicitação DELETE para o serviço da web foi executada com sucesso. O elemento no índice nº 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.
- Mais e mais aplicativos estão mudando para a arquitetura Restful. Isso ocorre porque muitas pessoas agora usam 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 usados para trabalhar com esses recursos.
- Visual Studio e .Net podem ser usados para criar serviços web Restful.
- Ao testar serviços da web para POST e PUT, você precisa usar outra ferramenta chamada fiddler, que pode ser usada para enviar a solicitação POST e PUT para o servidor.