Compartilhando minha resolução.
/**
* 1. Crie um programa em Java que utilize as classes HttpClient, HttpRequest e HttpResponse para fazer uma consulta
* à API do Google Books. Solicite ao usuário que insira o título de um livro, e exiba as informações disponíveis
* sobre o livro retornado pela API.
*/
package desafios.desafio01;
import java.io.IOException;
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.util.Scanner;
public class GoogleBooksAPI {
public static void main(String[] args) throws IOException, InterruptedException {
Scanner entrada = new Scanner(System.in);
System.out.print("Digite o título do livro: ");
String titulo = entrada.nextLine();
titulo = titulo.replaceAll(" ", "+");
String url = "https://www.googleapis.com/books/v1/volumes?q=" + titulo;
HttpClient cliente = HttpClient.newHttpClient();
HttpRequest requisicao = HttpRequest
.newBuilder()
.uri(URI.create(url))
.build();
HttpResponse<String> resposta = cliente.send(requisicao, HttpResponse.BodyHandlers.ofString());
System.out.println(resposta.body());
}
}
/**
* 2. Crie um programa Java que utiliza as classes HttpClient, HttpRequest e HttpResponse para fazer uma consulta
* à API CoinGecko e exiba a cotação atual de uma criptomoeda escolhida pelo usuário.
*/
package desafios.desafio01;
import java.io.IOException;
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.util.Scanner;
public class CoinGeckoAPI {
public static void main(String[] args) throws IOException, InterruptedException {
Scanner entrada = new Scanner(System.in);
System.out.print("Digite a criptomoeda desejada: ");
String criptomoeda = entrada.nextLine();
criptomoeda = criptomoeda.replaceAll(" ", "+");
String url = "https://api.coingecko.com/api/v3/simple/price?ids=" + criptomoeda + "&vs_currencies=brl";
HttpClient cliente = HttpClient.newHttpClient();
HttpRequest requisicao = HttpRequest
.newBuilder()
.uri(URI.create(url))
.build();
HttpResponse<String> resposta = cliente.send(requisicao, HttpResponse.BodyHandlers.ofString());
System.out.println(resposta.body());
}
}
/**
* 3. Crie um programa Java que faça uma consulta à API do TheMealDB utilizando as classes HttpClient, HttpRequest
* e HttpResponse. Solicite ao usuário que insira o nome de uma receita e exiba as informações disponíveis
* sobre essa receita.
*/
package desafios.desafio01;
import java.io.IOException;
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.util.Scanner;
public class TheMealDBAPI {
public static void main(String[] args) throws IOException, InterruptedException {
Scanner entrada = new Scanner(System.in);
System.out.print("Digite a receita desejada: ");
String receita = entrada.nextLine();
receita = receita.replaceAll(" ", "+");
String url = "https://www.themealdb.com/api/json/v1/1/search.php?s=" + receita;
HttpClient cliente = HttpClient.newHttpClient();
HttpRequest requisicao = HttpRequest
.newBuilder()
.uri(URI.create(url))
.build();
HttpResponse<String> resposta = cliente.send(requisicao, HttpResponse.BodyHandlers.ofString());
System.out.println(resposta.body());
}
}
Belezinha?