As APIs permitem que os programadores a construir incrível ferramenta e Aplicativos, mesmo com diferentes ambientes.
Para aqueles que podem não estar familiarizados com o API,
o Que é Api?
De acordo com o wikipedia, Uma interface de programação de aplicativo (API) é um conjunto de sub-rotina definições, protocolos e ferramentas para a construção de software de aplicação. Em termos gerais, é um conjunto claramente definido de métodos de comunicação entre os vários componentes de software.
Do lado do servidor de Interface da API geralmente consiste de um procedimento padronizado de solicitação-resposta do Sistema, normalmente referidos como Web Services.
Para o desenvolvimento de uma Api, você deve seguir um dos modelos de projeto, como:
- Rest
- SOAP
- JavaScript
- XML-RPC
Dois mais dominante modelos de projeto para a API SOAP e REST. SOAP utilizado para ser uma escolha popular para a tomada de uso específico Api(s). Mas, Agora, você pode ver a mudança de paradigma de SOAP para REST. De REST o modelo do projeto ganhou enorme popularidade, devido à sua simplicidade e grandiosidade.
Como um desenvolvedor, você pode seguir qualquer um como por suas exigências. Vamos dar uma olhada neles:
SOAP:
Em suma, SOAP(Simple Object Access Protocol) é uma especificação de protocolo para transferência de informação. Ele fornece fortemente tipo de formato de mensagem para a API, e baseia-se no formato XML.
Exemplo De Pedido:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
POST /url HTTP/1.1 Host: HostServerName Content-type: text/xml; charset=utf-8 Content-length: 350 SoapAction: http://tempUri.org/GetUserInfo ... <?xml version="1.0" encoding="utf-8" ?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <soap:Body> <GetUserInfo xmlns="http://tempUri.org/"> <UserID>1</UserID> <OutputParam /> </GetUserInfo> </soap:Body> </soap:Envelope> |
Exemplo de resposta:
1 2 3 4 5 6 7 8 9 10 11 |
<?xml version="1.0" encoding="utf-8" ?> <SOAP-ENV:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema" ...> <SOAP-ENV:Body> <method:MethodNameResponse> <method:MethodNameResult xmlns="" xsi:type="sqlresultstream:SqlResultStream"> <!-- the results are returned here --> </method:MethodNameResult> <method:OutputParam>Value</method:OutputParam> </method:MethodNameResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope> |
Rest:
REST é um estilo arquitetônico, ao contrário de SOAP, que é um protocolo padronizado. ele faz uso de HTTP e usa métodos HTTP explicitamente. Pode-estrutura da api de dados em JSON, XML, YAML, HTML ou qualquer outro formato. JSON é o formato preferido. Ao contrário de SOAP, você não precisa usar o verbo para a ação, mas correspondentes Métodos HTTP, como GET, PUT, DELETE, POST, PATCH.
Exemplo De Pedido:
1 2 3 |
GET /ticket Accept: application/json Content-Type: application |
Exemplo de resposta:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
200 OK Content-Type: application/json { "ticket": { "id": 11174, "incrementId": 82, "subject": "ticket subject", "isStarred": null, "isAgentView": true, "isTrashed": false, "source": "website", "group": null, "priority": { "id": 1, "name": "Low", "description": "Low", "color": "#5cb85c" }, "formatedCreatedAt": "21-Dec 10:36am", "totalThreads": "0", "agent": { "id": 1724, "name": "agent name" }, "customer": { "id": 193, "name": "customer name" }, "hasAttachments": 0 } } |
Mais e mais sites como uvdesk são os seguintes REST padrão de design.
Porque o RESTO, tem muitas vantagens sobre como SOAP
- Rest aproveita HTTP, então, tudo é simples.
- No Rest metadados e uri são substantivos, ação são especificados por Métodos HTTP, como GET, PUT, POST, DELETE, PATCH, HEAD.
- API Rest(s) são mais adequados para dispositivos móveis. então, se você pode utilizar sua API para Aplicações móveis, em seguida, API ReST é a escolha certa para você.
- vários formatos de dados podem ser suportados, como JSON, YAML, XML, enquanto SOAP fornece apenas o formato XML.
- serviços ReST são armazenáveis em cache.
- Normalmente, o Resto é mais rápido do que SOAP. Desde então, ele usa o formato JSON ao invés de XML.
- Rest seguintes comunidade é muito grande. assim, Você pode facilmente achar adequado biblioteca para o Rest implementaion.
- php: php-crud-api
- symfony: fosrest
- wordpress: wp-api
- java: Resteasy
o Que vem a seguir?
Se você tiver selecionado o Projeto adequado do Modelo. Então, Fique ligado para as próximas API categoria de blogs. Nos Próximos blogs, Você pode ter um olhar para a nossa completa jornada de API de desenvolvimento. Além disso, há todo o tipo de truques, dicas e pontos-chave que aprendemos durante o desenvolvimento de API REST.