O que é o descanso?
muitos serviços acessíveis ao público expõem uma API de descanso que permite uma ampla gama de aplicações desde interfaces de usuário web até integração e sincronização do sistema back-end. Então, o que é exactamente o descanso e o que torna uma API repousante?,
REST – REpresentational State Transfer
tecnicamente, REST significa REpresentational State Transfer (por isso não é um acrônimo perfeito), e essencialmente significa que é uma arquitetura destinada a transferir uma representação de dados do servidor ou estado entre um cliente e um servidor.
Existem alguns critérios detalhados que são considerados necessários para uma API ser repousante, mas o mais importante é que a API seja:
- apátrida
Isto significa que não há sessão necessária é realizada entre um cliente e servidor., Os dados recebidos do servidor podem ser usados de forma independente pelo cliente. Isto permite operações curtas e discretas, e até mesmo cache offline de dados. Isto torna o descanso um ajuste natural para as operações HTTP em que os pedidos são destinados a ser singulares e de curta duração.
- Uniform
REST APIs are meant to be self-describing, uniform in their definition, and each operation separated by a different endpoint or URL. Em termos práticos, a maioria das APIs de descanso implementam operações classic CRUD (Create, Read, Update, Delete) contra um modelo de dados., Esta uniformidade permite aos desenvolvedores aprender facilmente o padrão de uso de cada API.
então como é uma API de descanso?
porque se destina a ser representacional, vamos começar com o modelo de dados que se destina a representar. Por exemplo, se tivermos uma aplicação de comércio on-line, gostaríamos de definir as operações de gerenciamento de produtos em nosso catálogo, centrado em torno do modelo de Produto.
cada uma destas operações seria ligada a uma combinação de um URL e um verbo HTTP., Para revisar, existem muitos verbos HTTP, mas a maioria do Desenvolvimento web usa apenas os verbos GET E POST para solicitar uma URL ou postar dados do formulário, respectivamente. Mas o REST usa mais verbos HTTP para sinalizar ao servidor que tipo de operação o cliente está realizando.
A seguir está uma lista simplificada de URLs combinado com o verbo HTTP que usaríamos para expor a API completa para a gestão de um catálogo de Produto:
As operações e URLs acima são apenas as operações básicas em um único modelo., As API REST podem também suportar operações muito específicas ou operações hierárquicas. Por exemplo, se você quiser enviar um sinal para o servidor para reordenar a oferta de produtos, você pode expor uma URL como esta:
/produtos/{id}/reordenar | POST | Sinal para o servidor que você deseja reordenar quantidades de um produto {id}. O corpo da mensagem pode estar vazio, ou conter um modelo de dados usado para instruções detalhadas sobre a operação de reordenamento., |
Ou, se você quiser mergulhar no catálogo de produtos e executar uma consulta para retornar uma lista de todos os pedidos de um determinado produto, a API pode expor uma operação como esta:
/produtos/{id}/encomendas | GET | Dado um {id} para um produto, retorno de todas as ordens., |
por outro lado, você pode expor uma ordem centrada no ponto de extremidade que permite listar todos os produtos na ordem:
/encomendas/{id}/produtos | GET | Dada uma ordem {id} retornar todos os produtos na ordem. |
como são os dados do servidor?,
embora não haja nenhum requisito estrito para o tipo de dados que uma API de repouso usa ou retorna, tornou-se um padrão de facto para as API de repouso baseadas na web para usar JSON como a definição de dados.
isto é porque JSON é um formato nativo que todos os navegadores modernos podem usar para representar objetos hierárquicos. Para mais informações sobre JSON, Leia nosso artigo O que é JSON?para saber mais sobre os nossos produtos, contacte o seu representante de vendas da OEA toll free nos EUA em 1-800-533-4994 ou, para Informações internacionais, ligue para 1303-679-0898.