Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Pré requisitos

  1. 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 necessário ter 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 uma lista 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
languagejs
firstline1
titlefiltrando pelo ID Modelo do objeto usado
linenumberstrue
{
	"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 dois blocos de programação em sua API. Elas permitem obter tanto o conteúdo disponibilizado pelo serviço quanto o cabeçalho da requisição, caso necessite:

  1. Obter Conteúdo da requisição: retorna o conteúdo solicitado pela requisição;
  2. Obter cabeçalho da URL: obtêm o cabeçalho da requisição HTML.

Neste exemplo usaremos o bloco servidor Obter Conteúdo da requisição.

Informações

Os blocos de programação Clientes são assíncronos, dessa forma, será necessário além do bloco de requisição REST, usar também o bloco Promessa, que fica aguardando a resposta do serviço para dar continuidade a execução da função. Para saber maisacesse a documentaçãoo tutorial.

Para testar os dois exemplos abaixo, basta chamar a função criada no evento de clique de um botão, por exemplo. O resultado será visualizado na aba Console do Depurador do Cronapp.

Via URI

Um URI é um identificador de recurso que identifica exclusivamente uma instância específica de um tipo de recurso, no caso do nosso exemplo foi utilizado a função todos que espera receber um id como parâmetro.. Caso o recurso permita, podemos informar parâmetros entre "/", porém é imprescindível que a ordem informada dos parâmetros seja a mesma ordem que a função espera receber.

Estrutura do URI: <domínio>/<função>/<parâmetro1>/<parâmetro2>/<parâmetroN>

  • domínio: URL do serviço;
  • função: função que gera o serviço;
  • /: Separa domínio, função e parâmetros;
  • Parâmetro: valores usados para filtrar o retorno,


Figura 1 - Bloco Obter conteúdo da URL via URI


  1. Adicione o bloco imprime;
  2. Adicione Encaixe o bloco bloco Obter conteúdo da URL;
    • Método de requisição: GET;
    • Tipo de conteúdo: JSON;
  3. Informe o endereço URL da sua API com o parâmetro do recurso a ser obtido;
Informações

Caso queira obter todos os dados presentes na API remova o parâmetro {id}.

Estrutura do URI

  1. .
    • Nesse exemplo usaremos o objeto com id=25 ( https://jsonplaceholder.typicode.com
/todos/25URL domínio
    • /todos/25
  • todos: Função que irá buscar nosso registro;
  • /: Separa a função dos parâmetros chave (key);
  • 25:
      •  
    Valor (value) especificado na chave (key);
      • ).


    Testando API

    O bloco imprime foi adicionado a usado na função para validar corretamente o funcionamento da sua API no console 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 depuradorDepurador do Cronapp.


    Figura 2 - Console do depurador exibindo JSON retornado via URIo objeto de retorno da requisição

    Via Query String

    A requisição via query string nos permite utilizar diversos parâmetros como filtro para obter um registro específico da API. Esses parâmetros não necessitam estar em uma ordem predefinida. 

    Estrutura do Query String: <domínio>/<função>?<chave1>=<valor1>&<chave2>=<valor2>&<chaveN>=<valorN>

    • domínio: URL do serviço;
    • função: função que gera o serviço;
    • /: Separa domínio e função;
    • ?: Separa a função dos parâmetros chave (key);
    • Chave: parâmetro passado;
    • =: atribui valor à chave;
    • Valor: especificado;
    • &: (ampersand) que permite adicionar outro parâmetro na URL.


    Image Modified

    Figura 3 - Bloco Obter conteúdo da URL via Query String


    1. Adicione o bloco imprime;
    2. Adicione Encaixe o bloco Obter conteúdo da URL;
      • Método de requisição: GET;
      • Tipo de conteúdo: JSON;
      • Informe o Endereço URL: informe o endereço da sua API;API até a função, para esse exemplo será "https://jsonplaceholder.typicode.com/todos/".
    3. 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 entreesperados por sua API.
      • Para esse exemplo podemos usar qualquer atributo do objeto: userId, id, title completed;
    4. Escreva o filtro de acordo com o campo escolhido, nesse caso 1, que é um id.

    Estrutura do Query String

    1. .
      1. Para esse exemplo usamos os atributos "completed" e "id", passando os valores "false" e "1" respectivamente.


    Após finalizada, a requisição montada na Figura 3 ficou: https://jsonplaceholder.typicode.com/todos?

    id=1&

    completed=false

    &id=1

    URL domínio / todos ? id = 1 & completed = false

    • todos: Função que irá buscar nosso registro;
    • ?: Separa a função dos parâmetros chave (key);
    • id: Chave (key), parâmetro a ser usado para obter o registro;
    • 1: Valor (value) especificado na chave (key);
    • &: ampersand que permite adicionar outro parâmetro na URL.

    Testando API

    O bloco imprime foi adicionado a usado na 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 4 - Console do depurador exibindo JSON retornado via Query Stringum array de objeto de retorno da requisição


    Nessa página:

    Índice


    Outras informações:

    Web Services