O que é a API REST e como pode obter dados para a sua aplicação ou sítio Web?
Principais lições
As APIs desempenham um papel vital na comunicação perfeita entre vários componentes de software, aceitando pedidos de entrada e fornecendo respostas de saída adequadas, simplificando assim o processo de acesso e manipulação de dados em diferentes sistemas.
As API RESTful utilizam Identificadores Uniformes de Recursos (URIs) como meio de aceder e manipular recursos, empregando vários verbos de pedido como GET, POST, PUT e DELETE para realizar operações que incluem a recuperação, criação, modificação e remoção de informações em conformidade.
A utilização de bibliotecas como got
em JavaScript ou requests
em Python permite aos programadores construir aplicações capazes de recuperar informações de múltiplas API RESTful através do fornecimento de uma chave de API e de uma consulta no URL.
O termo “API” representa o conceito de uma interface de programação de aplicações, que serve de meio para facilitar a comunicação entre aplicações através de uma série de funções definidas. Essencialmente, quando um programa de software envia um pedido a outro através de uma API, recebe em troca uma resposta correspondente e pertinente.
REST (Representational State Transfer) é um estilo de arquitetura utilizado no desenvolvimento de aplicações cliente-servidor. Envolve a obtenção de uma representação dos dados que residem numa base de dados através da utilização de uma API RESTful. Além disso, este tipo de API funciona de forma sem estado, o que significa que o servidor não retém qualquer informação relativa aos pedidos dos clientes durante os períodos intermédios.
Como é que uma API REST funciona?
Uma API RESTful utiliza Identificadores Uniformes de Recursos (URIs) para recuperar e manipular dados, sendo os URLs a forma típica de URIs utilizada nestes contextos.
Para utilizar e modificar recursos, uma API RESTful utiliza verbos de pedido específicos para aceder e manipular recursos:
⭐Get “vai buscar dados a uma base de dados.
⭐Post- adiciona novos dados a uma base de dados.
⭐Put- atualiza dados numa base de dados.
⭐Delete” - elimina dados de uma base de dados.
Utilizar a multiplicidade de APIs RESTful pré-existentes acessíveis online como alternativa à construção da sua própria API (em vez de desenvolver uma solução personalizada) restringe as suas opções apenas ao método de pedido GET (através de um URL). Os URLs em questão incluem vários elementos, mas os mais relevantes para as suas necessidades englobam as credenciais de autorização necessárias e quaisquer parâmetros de inquérito necessários para a recuperação de dados.
Após o registo numa plataforma de Interface de Programação de Aplicação (API) RESTful, um indivíduo obtém um identificador singular conhecido como chave de API. Esta chave serve para personalizar a pesquisa, utilizando um inquérito ou consulta específica. Por exemplo, se alguém desejar obter informações sobre as condições climatéricas actuais na cidade de Nova Iorque, deve incluir “city=New York” na parte de consulta do seu Uniform Resource Locator (URL).
Após a execução de um pedido GET, a resposta resultante inclui um código de estado e um corpo. Nos casos em que o pedido tenha sido executado com êxito, o corpo da resposta apresentará as informações desejadas para utilização num sítio Web ou aplicação.
Usando um aplicativo JavaScript para obter dados de diferentes APIs REST
Para desenvolver esse aplicativo JavaScript, é necessário baixar e instalar dois programas de software separados em seu computador pessoal: o NodeJS e o npm. Felizmente, preparámos um guia detalhado sobre como realizar este processo para utilizadores dos sistemas operativos Ubuntu e Windows. Se desejar obter mais informações sobre este tópico, consulte os nossos respectivos artigos que descrevem os procedimentos de instalação passo a passo para cada plataforma.
Após a instalação dos pacotes de software acima mencionados, é necessário executar as acções subsequentes:
Abra o seu ambiente de desenvolvimento integrado (IDE) e inicie o terminal dentro dele.
Para aceder ao diretório que contém o ficheiro da aplicação JavaScript, utilize o comando cd num terminal ou numa janela de prompt de comando. Isso permitirá que você altere o diretório de trabalho atual e facilitará a navegação para o local desejado.
⭐ Inicialize o npm com a seguinte linha de código:
npm init -y
A implementação da funcionalidade principal deste aplicativo depende de um módulo npm específico conhecido como “got”, que serve como uma biblioteca de solicitação HTTP para o NodeJS. Para garantir que a biblioteca got é incorporada nos ficheiros da aplicação, pode utilizar o comando fornecido para instalar automaticamente a sua versão mais recente:
npm install got@latest
Pode agora construir a sua aplicação à sua discrição.
Usando a biblioteca Got para construir seu aplicativo
// import the got library into your application
import got from 'got';
// fetch data from an API and prints its body to the terminal
(async () => {
try {
const response = await got(URL);
const data = JSON.parse(response.body);
console.log(data);
} catch (error) {
console.log(error.data);
}
})();
O aplicativo mencionado acima pode extrair informações de qualquer API RESTful baseada na Internet; no entanto, é necessário fornecer previamente o Uniform Resource Locator (URL) apropriado do recurso pertinente.
Obtendo dados de uma API REST de clima
A API Weatherbit.io é uma das APIs de clima mais populares. Inserir o URL dessa API no aplicativo JavaScript simples acima tornará o aplicativo operacional.
Utilizar a API REST Weatherbit.io
// import the got library into your application
const got = require('got');
// fetch data from an API and prints its body to the terminal
(async () => {
try {
const URL =
'https://api.weatherbit.io/v2.0/current?lat=40.7128&lon=-74.0060&key=API_KEY';
const response = await got(URL);
const data = JSON.parse(response.body);
console.log(data);
} catch (error) {
console.log(error.data);
}
})();
O URL da API Weatherbit.io foi integrado na aplicação. Para garantir um funcionamento correto, é essencial modificar um elemento no URL designado por “API\_KEY”. Esta chave é fornecida pela Weatherbit.io aquando do registo de uma conta gratuita e serve como um componente crucial para aceder aos seus serviços através desta API.
Pode optar por modificar a secção de consulta no código fornecido. Atualmente, o programa obtém dados meteorológicos nas coordenadas geográficas de 40,7128 graus de latitude norte e -74,0060 graus de longitude oeste; no entanto, tem a flexibilidade de introduzir coordenadas alternativas, se desejar. Embora a implementação fornecida seja considerada adequada, também tem a opção de procurar informações meteorológicas com base no nome de uma cidade específica.
Depois de introduzir a sua chave API no campo designado, está agora autorizado a executar o seu script JavaScript. A interface deve exibir uma mensagem semelhante ao seguinte resultado no seu prompt de comando:
Alguns elementos-chave dos dados de resposta são dignos de nota, incluindo, mas não se limitando a:
A cidade localizada nas coordenadas longitudinais e latitudinais especificadas é indicada pelo seu nome, que serve como um identificador único para essa área urbana específica dentro da região geográfica mais alargada.
A hora atual é expressa em Tempo Universal Coordenado (UTC) e representa a hora do dia no formato de ano, mês e data, utilizando uma combinação de números e letras para indicar o ano e o dia da semana (como “2023-04-15T08:30”).
A entidade “weather” representa uma estrutura composta que inclui um símbolo visual que denota condições meteorológicas, um identificador alfanumérico correspondente conhecido como código meteorológico e uma representação verbal do estado atual ou previsto do clima.
Obtenção de dados de uma API REST de notícias
Esta secção utiliza a API Newsdata.io . Como todas as APIs REST na Web, ela fornece várias opções de consulta, que podem ser usadas para recuperar notícias de última hora de todo o mundo. Com a API Newsdata.io , pode obter notícias de um país específico, ou num determinado idioma, categoria, etc.
Através da utilização da aplicação JavaScript, é possível obter informações de uma API RESTful de notícias substituindo simplesmente o URL fornecido na aplicação pelo URL especificado abaixo:
'https://newsdata.io/api/1/news?apikey=YOUR_API_KEY&country=us'
Para aceder às notícias de última hora da América utilizando a API Newsdata.io, é necessário substituir o marcador de posição “YOUR\_API\_KEY” no URL especificado pela sua chave de API exclusiva, que será obtida após o registo bem-sucedido em Newsdata.io. Ao alterar o parâmetro “country” de “us” para “jp”, torna-se possível recuperar artigos de notícias do Japão.
A carga de dados que se segue será composta por uma série de instâncias, cada uma delas encapsulando informações pertinentes relativas a eventos actuais que ocorrem nos Estados Unidos da América. Neste caso particular, o elemento inicial da coleção servirá de ponto de partida para uma análise e um discurso mais aprofundados.
Utilizar uma aplicação Python para obter dados de diferentes APIs Rest
É possível obter dados para um sítio Web ou um programa de software utilizando qualquer linguagem de programação em que se tenha conhecimentos. Por conseguinte, se preferir não utilizar JavaScript, pode obter resultados equivalentes através da implementação de uma solução baseada em Python. Isto pode envolver a construção de uma interface de programação de aplicações (API) Python através de uma das suas estruturas predominantes, ou a recuperação de informações de uma API de transferência de estado representacional (REST) existente com um script simples.
Para utilizar a biblioteca requests em Python, é necessário usar o gerenciador de pacotes pip e instalar o módulo mencionado acima. Uma vez instalado, o utilizador pode desenvolver o seu programa implementando o código fornecido.
# import the requests library
import requests
# grabbing data using the requests library
URL = 'https://newsdata.io/api/1/sources?apikey=YOUR_API_KEY=us'
res = requests.get(URL)
json = res.json()
for key in json:
print(key, json[key])
Para utilizar a funcionalidade da interface de programação de aplicações (API), é necessário incorporar o seu identificador único (chave API) no campo designado. Isto irá gerar um objeto de resposta, que se assemelha muito ao resultado gerado pela implementação JavaScript, contendo dados num formato adequado para processamento e análise.
Obter dados para seu site ou aplicativo é muito simples
Com a disponibilidade de recursos adequados, é essencial reconhecer os benefícios da abordagem arquitetônica REST na promoção do desacoplamento entre vários componentes. A versatilidade deste método permite que os programadores utilizem uma variedade de linguagens de programação enquanto acedem a dados de uma vasta gama de APIs RESTful disponíveis online.
É essencial reconhecer o significado tanto da chave da API como da consulta ao tentar obter as informações exactas exigidas pela sua aplicação.