A Representational State Transfer (REST), em português Transferência de Estado Representacional, é um estilo de arquitetura que define um conjunto de restrições e propriedades baseados em HTTP. Neste artigo, abordaremos alguns conceitos básicos sobre esta arquitetura:

 

O QUE É API?

O acrônimo API que provém do inglês Application Programming Interface (Em português, significa Interface de Programação de Aplicações), trata-se de um conjunto de rotinas e padrões estabelecidos e documentados por uma aplicação A, para que outras aplicações consigam utilizar as funcionalidades desta aplicação A, sem precisar conhecer detalhes da implementação do software.

Desta forma, entendemos que as APIs permitem uma interoperabilidade entre aplicações. Em outras palavras, a comunicação entre aplicações e entre os usuários.

 

O QUE É REST?

REST significa Representational State Transfer. Em português, Transferência de Estado Representacional. Trata-se de uma abstração da arquitetura da Web. Resumidamente, o REST consiste em princípios/regras que, quando seguidas, permitem a criação de um projeto com interfaces bem definidas. Desta forma, permitindo, por exemplo, que aplicações se comuniquem com clareza.

 

ORIGEM DO REST

O HTTP é o principal protocolo de comunicação para sistemas Web, existente há mais de 20 anos, e em todo esse tempo sofreu algumas atualizações. Nos anos 2000, um dos principais autores do protocolo HTTP, Roy Fielding, sugeriu, dentre outras coisas, o uso de novos métodos HTTP. Estes métodos visavam resolver problemas relacionados a semântica quando requisições HTTP eram feitas.

Estas sugestões permitiram o uso do HTTP de uma forma muito mais próxima da nossa realidade, dando sentido às requisições HTTP.

 

EM RESUMO

  • REST é abreviatura de Representational State Transfer;
  • É uma outra forma de desenvolver WebServices
  • REST é um conjunto de princípios que definem como Web Standards como HTTP devem ser usados
  • Aderindo aos princípios REST, teremos um sistema que explora a arquitetura da Web nosso beneficio

 

MÉTODOS HTTP

Abaixo, os métodos padrões para a execução de requisições HTTP, em consumo de serviços REST:

 

  • PUT (INSERIR)

Semelhante ao método POST, a ideia básica do método PUT é permitir a atualização de um recuso no servidor.

 

  • DELETE (EXCLUIR)

Como você já deve estar imaginando, o método DELETE é utilizado com o intuito de remover um recurso em um determinado servidor.

 

  • GET (CAPTURAR)

O método GET é utilizado quando existe a necessidade de se obter um recurso. Ao executar o método GET sob um recurso, uma representação será devolvida pelo servidor.

 

  • POST (ATUALIZAR)

Utilizamos o método POST quando desejamos criar algum recurso no servidor a partir de uma determinada representação. Exemplo disso é quando fazemos a submissão de algum formulário em uma página Web.

 

O QUE SIGNIFICA RESTFUL

Existe uma certa confusão quanto aos termos REST e RESTful. Entretanto, ambos representam os mesmo princípios. A diferença é apenas gramatical. Em outras palavras, sistemas que utilizam os princípios REST são chamados de RESTful.

 

REST: conjunto de princípios de arquitetura

RESTful: capacidade de determinado sistema aplicar os princípios de REST.

 

CONCLUSÃO

Neste artigo, eu procurei oferecer um rápida introdução sobre os conceitos por trás do REST, a arquitetura da Web. É extremamente importante entender o conceito da arquitetura Restful para evitar perda de tempo na construção da API, facilitando a vida de outros usuários que podem estar do outro lado do mundo tentando consumir a sua API. É muito importante evitar que suas APIS sofram alterações constantes e mudam de versão a todo momento, assim dificultando ainda mais a comunicação. Por isso é bom planejar e projetar bem antes de disponibilizá-la.

 

Autor Jonatan Maicon da Costa

 

Referências:

Baseado em,

https://imasters.com.br/front-end/entendendo-como-funciona-o-restful-de-verdade/

https://www.infoq.com/br/articles/rest-introduction

https://becode.com.br/o-que-e-api-rest-e-restful/

http://blog.algaworks.com/4-conceitos-sobre-rest-que-qualquer-desenvolvedor-precisa-conhecer/