Meus projetos são Rest ou RestFul?

20/10/2017

0

Olá eu tenho uma dúvida, comecei a pouco tempo o curso daqui na DevMedia de "Consumindo um serviço REST com ASP.NET MVC" para tirar minha dúvida sobre RESTFul.
Eu já desenvolvo a um tempo com MVC 5, só que me questiono se o que desenvolvo é RESTFul ou não.


Estava pesquisando no Google e encontrei um site onde informa que para seu projeto seja RESTFul tem que seguir e conter as seguintes opções:


"-Ele usa o protocolo HTTP (verbos, accept headers, códigos de estado HTTP, Content-Type) de forma explícita e representativa para se comunicar. URIs são usados para expor a estrutura do serviço. Utiliza uma notação comum para transferência de dados como XML ou JSON.

-Não possui estado entre essas comunicações, ou seja, cada comunicação é independente e uniforme (padronizada) precisando passar toda informação necessária.
Ele deve facilitar o cache de conteúdo no cliente.

-Deve ter clara definição do que faz parte do cliente e do servidor. O cliente não precisa saber como o servidor armazena dados, por exemplo. Assim cada implementação não depende da outra e se torna mais escalável.

-Permite o uso em camadas também facilitando a escalabilidade, confiabilidade e segurança.

-Frequentemente é criado com alguma forma de extensibilidade."



Bom tem algumas opções ali que eu nem entendo mas meus projetos utilizam de métodos JsonResult com [HttpPost] na parte do Controller, só que na parte da View eu utilizo de AngularJS. Um trecho simples do js do meu Código ficaria assim:

$scope.NoticiaID = function (id) {
$http({
method: 'POST',
data: { 'id': id },
url: '/Pages/NoticiaID'
}).then(function successCallback(response) {
$scope.custModel = response.data;
});
};

e na hora de criar um novo projeto eu seto os templates MVC e Web API.


Eu estava vendo nesse curso que o importante para ser RestFul é realizar a transação de dados e requisições via HTTP.

Então essa forma do Angular com $http para RestFul é a certa ?
E minha aplicação é conforme mencionei a parte a View e do Controller é RestFul? ou só Rest?
André Aranda

André Aranda

Responder

Post mais votado

06/11/2017

Olá, André. Beleza?

REST é um padrão arquitetural e como tal propõe algumas práticas para a construção de web services. Os serviços que implementam esse padrão são chamados de RESTful. Ou seja, é apenas uma questão de nomenclatura.

Neste curso explicamos esse conceito: https://www.devmedia.com.br/curso/o-que-e-restful/1466

Abraço.

Joel Rodrigues

Joel Rodrigues
Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar