Intro
Com alguns cliques em um desktop ou dispositivo, pode-se comprar, vender ou publicar qualquer coisa, a qualquer hora. Exatamente como isso acontece? como INFORMAÇÕES ir daqui para lá? O herói não reconhecido é a API.
O que é uma API?
API significa um INTERFACE DE PROGRAMAÇÃO DO APLICATIVO. Uma API expressa um componente de software, suas operações, entradas, saídas e tipos subjacentes. Mas como você explica a API em inglês simples? A API funciona como um mensageiro que transfere sua solicitação de um aplicativo e entrega a resposta de volta para você.
1 exemplo: Quando você está procurando voos online. Você interage com o site da companhia aérea. O site detalha os assentos e o custo do voo naquela data e hora específicas. Você escolhe sua refeição ou assento, bagagem ou solicitações de animais de estimação.
Mas, se você não estiver usando o site direto da companhia aérea ou estiver usando um agente de viagens online que combina dados de várias companhias aéreas. Para obter as informações, um aplicativo interage com a API da companhia aérea. A API é a interface que leva os dados do site do agente de viagens para o sistema da companhia aérea.
Ele também recebe a resposta da companhia aérea e entrega de volta. Isso facilita a interação entre o serviço de viagens e os sistemas da companhia aérea para reservar o voo. As APIs envolvem uma biblioteca para rotinas, estruturas de dados, classes de objetos e variáveis. Por exemplo, serviços SOAP e REST.
2 exemplo: A Best Buy disponibiliza um preço especial da Oferta do Dia em seu site. Esses mesmos dados estão em seu aplicativo móvel. O aplicativo não se preocupa com o sistema interno de preços – ele pode chamar a API Deal of the Day e perguntar: qual é o preço especial? A Best Buy responde com as informações solicitadas em um formato padrão que o aplicativo exibe para o usuário final.
Exemplo3: APIs para mídia social são cruciais. Os usuários podem acessar o conteúdo e manter baixo o número de contas e senhas que acompanham, para que possam manter as coisas simples.
- API do Twitter: interaja com a maioria das funções do Twitter
- API do Facebook: Para pagamentos, dados do usuário e login
- API do Instagram: marque usuários, visualize fotos de tendências
E as APIs REST e SOAP?
SABÃO e DESCANSO usam um serviço que consome API, conhecido como API da Web. O serviço Web não depende de nenhum conhecimento prévio de informações. SOAP é um protocolo de serviço da Web leve e independente de plataforma. SOAP é um protocolo de mensagens baseado em XML. Ao contrário do serviço web SOAP, o serviço Restful usa a arquitetura REST, construída para comunicação ponto a ponto.
Serviço Web SOAP
- SOAP Sender – criando e transmitindo uma mensagem.
- Receptor SOAP – obtém e processa a mensagem.
- SOAP Intermediário- recebe e processa blocos de cabeçalho.
WebService RESTful
Representational State Transfer (REST) refere-se à relação entre o cliente e o servidor e como o estado é processado. Arquitetura Rest, um servidor REST fornece acesso a recursos para o cliente. Rest lida com a leitura e modificação ou gravação dos recursos. Uniform Identifier (URI) identifica recursos para conter um documento. Isso irá capturar o estado do recurso.
REST é mais leve que a arquitetura SOAP. Ele analisa JSON, uma linguagem legível por humanos que permite compartilhamento de dados e dados mais fáceis de usar, em vez de XML usado pela arquitetura SOAP.
Existem vários princípios para projetar Restful Web Service, que são:
- Endereçabilidade – Cada recurso deve ter pelo menos um URL.
- Statelessness – Um serviço Restful é um serviço sem estado. Uma solicitação é independente de quaisquer solicitações anteriores do serviço. O HTTP é, por design, um protocolo sem estado.
- Armazenável em cache – Dados marcados como armazenados em cache no sistema e reutilizados no futuro. Como a resposta ao mesmo pedido em vez de produzir os mesmos resultados. As restrições de cache permitem a marcação de dados de resposta como armazenáveis em cache ou não armazenáveis em cache.
- Interface uniforme – permite uma interface comum e padronizada para acesso. O uso de uma coleção definida de métodos HTTP. Cumprir esses conceitos garante que a implementação REST seja leve.
Vantagens do REST
- Usa um formato mais simples para mensagens
- Oferece maior eficiência a longo prazo
- Suporta comunicação sem estado
- Use padrões e gramática HTTP
- Os dados estão disponíveis como um recurso
Desvantagens do REST
- Falha em padrões de serviço da Web, como transações de segurança, etc.
- As solicitações REST não são escaláveis
Comparação REST x SOAP
Diferenças entre serviços web SOAP e REST.
Serviço Web SOAP | Serviço Web Rest |
Requer carga útil de entrada pesada em comparação com REST. | REST é leve, pois usa URI para formulários de dados. |
A alteração nos serviços SOAP geralmente leva a uma alteração significativa no código no lado do cliente. | O código do lado do cliente não é afetado pela alteração nos serviços no provisionamento da Web REST. |
O tipo de retorno é sempre do tipo XML. | Fornece versatilidade com relação à forma dos dados retornados. |
Um protocolo de mensagem baseado em XML | Um protocolo de arquitetura |
Requer uma biblioteca SOAP no final do cliente. | Nenhum suporte de biblioteca necessário normalmente usado por HTTP. |
Suporta WS-Security e SSL. | Suporta SSL e HTTPS. |
SOAP define sua própria segurança. | Os serviços da Web RESTful herdam as medidas de segurança do transporte subjacente. |
Tipos de Políticas de Liberação de API
As políticas de lançamento da API são:
Políticas de liberação privada:
A API está disponível apenas para uso interno da empresa.
Políticas de liberação de parceiros:
A API está disponível apenas para determinados parceiros de negócios. As empresas podem controlar a qualidade da API por causa do controle sobre quem pode acessá-la.
Políticas de divulgação pública:
A API é para uso público. A disponibilidade das políticas de lançamento está disponível ao público. Exemplo: API do Microsoft Windows e Cocoa da Apple.
Conclusão
As APIs estão presentes em todos os lugares, esteja você reservando um voo ou interagindo com aplicativos de mídia social. A API SOAP é baseada em comunicações XML, difere da API REST porque não requer nenhuma configuração especial.
Projetar serviços da Web Rest deve aderir a certos conceitos, incluindo endereçamento, ausência de estado, capacidade de cache e uma interface padrão. As regras de liberação da API podem ser divididas em três categorias: APIs privadas, APIs de parceiros e APIs públicas.
Obrigado por ler este artigo. Confira nosso artigo sobre um guia para Segurança da API 2022.