1
resposta

Desafio Requisiçoes e respostas

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 GoogleBooks {
    public static void main(String[] args) throws IOException, InterruptedException {
        Scanner livro = new Scanner(System.in);
        System.out.println("Digite o nome do livro para a busca: ");
        var titulo = livro.nextLine();

        String chave = "AIzaSyDgXgExkgS1MmHPeW6qt3IaLoiYWlIaOtc";
        String busca = "https://www.googleapis.com/books/v1/volumes?q=" +titulo+"&key="+chave;

        HttpClient client = HttpClient.newHttpClient();
        HttpRequest request = HttpRequest.newBuilder()
                .uri(URI.create(busca))
                .build();
        HttpResponse<String> response = client
                .send(request, HttpResponse.BodyHandlers.ofString());
        System.out.println(response.body());
    }
}
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 CotacaoCripto {
    public static void main(String[] args) {
        Scanner cripto = new Scanner(System.in);
        System.out.println("Digite o nome da moeda para cotação: ");
        var moeda = cripto.nextLine();

        String endereco = "https://api.coingecko.com/api/v3/simple/price?ids=" + moeda + "&vs_currencies=usd";

        HttpClient client = HttpClient.newHttpClient();
        HttpRequest request = HttpRequest.newBuilder()
                .uri(URI.create(endereco))
                .build();
        try {
            HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());

            if (response.statusCode() == 200) {
                System.out.println("\nCotação atual:");
                System.out.println(response.body());
            } else {
                System.out.println("Erro ao buscar criptomoeda. Código de status: " + response.statusCode());
            }
        } catch (Exception e) {
            System.out.println("Erro durante a requisição: " + e.getMessage());
        } finally {
            cripto.close();
        }
    }
}
import java.io.IOException;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.util.Scanner;
import java.net.URI;

public class TheMeal {
    public static void main(String[] args) throws IOException, InterruptedException {
        Scanner leitura = new Scanner(System.in);
        System.out.println("Digite a receita que procura: ");
        var receita = leitura.nextLine();

        String busca = "https://www.themealdb.com/api/json/v1/1/search.php?s=" + receita;

        HttpClient client = HttpClient.newHttpClient();
        HttpRequest request = HttpRequest.newBuilder().uri(URI.create(busca)).build();
        HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());

        System.out.println(response.body());
    }
}
1 resposta

E aí, Renata! Tudo bem?

Parabéns! Mantenha o ritmo nos exercícios e continue compartilhando na nossa comunidade.

Percebi que você dominou o uso de requisições HTTP com a API HttpClient, aplicou muito bem o Scanner para capturar a entrada do usuário e ainda entendeu a relevância de consultar APIs públicas em tempo real para deixar suas aplicações mais dinâmicas.

Permaneça postando as suas soluções, com certeza isso ajudará outros estudantes e tem grande relevância para o fórum.

Ícone de sugestão Para saber mais:

Sugestão de conteúdo para você mergulhar ainda mais sobre o tema:

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!