Versões comparadas
Chave
- Esta linha foi adicionada.
- Esta linha foi removida.
- A formatação mudou.
O modelo REST (Representational State Transfer), traz uma nova forma na criação de Web Service utilizando a semântica de métodos HTTP (GET, POST, PUT e DELETE), diferentemente do SOAP, que necessita de camadas intermediárias.
Características:
Principais métodos HTTP utilizados para determinar a operação a ser realizada:
GET: Obter
POST: Criar
PUT: Alterar
DELETE: Apagar
- Parâmetros são passados na URL e/ou no corpo da requisição;
- O recurso é indicado na URL da requisição.
- Tipos de dados são definidos entre cliente e servidor (Ex: JSON e XML).
Pré requisitos
- Projeto do tipo mobile ou web criado. Caso haja dúvidas de como criar esse tipo de projeto acesse o link ( Criar projeto );
Passos
Antes de consumir um serviço REST no Cronapp, é importante garantir que você já tenha um serviço que disponibilize. Para saber como criar um dentro do Cronapp acesse a página Disponibilizando Web Service Rest.
Neste exemplo foi utilizado uma API externa gratuita de testes (https://jsonplaceholder.typicode.com/todos/), ela retorna um array de objetos.
É possível filtrar o objeto informando o seu ID no final do endereço: https://jsonplaceholder.typicode.com/todos/2
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "userId": 1, "id": 2, "title": "quis ut nam facilis et officia qui", "completed": false } |
Consumindo Serviço REST
Para consumir web services REST, o Cronapp disponibiliza duas funções em sua API. Elas permitem obter tanto o conteúdo disponibilizado pelo serviço quanto o cabeçalho da requisição, caso necessite.
Neste exemplo usaremos o bloco servidor Obter Conteúdo da requisição.
Utilizando Parâmetros (Query String
)Figura 1 - Bloco Obter conteúdo da URL
- Adicione o bloco imprime;
- Adicione o bloco Obter conteúdo da URL;
- Selecione o método da requisição como GET;
- Selecione o tipo de conteúdo como JSON;
- Informe o Endereço URL da sua API;
- Adicione o bloco criar mapa e configure um ou mais Parâmetros de acordo com os campos da sua API, nesse caso poderíamos escolher entre: id, nome, sabor, preco, quantidade, created_at e updated_et;
- Escreva o filtro de acordo com o campo escolhido, nesse caso Bolo, que é um nome.
Informações |
---|
Caso queira obter todos os dados presentes na API remova o bloco criar mapa. |
REST
Testando API
O bloco imprime foi adicionado a função para validar corretamente o funcionamento da sua API no console do depurador do Cronapp.
Para realizar o teste, adicione um botão em uma view e vincule o Blockly criado ao botão. Após isso, acesse a aplicação, clique sobre o botão e observe a resposta que irá aparecer no console do depurador.
Figura 2 - Adicionando Botão e vinculando Blockly
Figura 3 - Console do depurador exibindo JSON retornado pela API
Essa mesma API pode ser testada em outras plataformas a exemplo do Postman, seguindo o padrão do bloco Obter conteúdo da URL (Query String).
https://my-api-strapi.herokuapp.com/produtos?preco=15&nome=Bolo
URL domínio / produtos ? preco = 15 & nome = Bolo
- produtos: É a função que irá buscar nosso registro;
- ?: Separa a função dos parâmetros chave (key);
- preco: É uma chave (key), parâmetro a ser usado para obter o registro;
- 15: É o valor (value) especificado na chave (key);
- &: ampersand que permite adicionar outro parâmetro na URL.
Figura 4 - Teste de API no Postman