1
resposta

Faça como na aula

package br.com.alura.screenmatch.principal;
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 PrincipalComBusca {
    public static void main(String[] args) throws IOException, InterruptedException {
        Scanner scan = new Scanner(System.in);
        System.out.println("Digite um filme para busca: ");
        var busca = scan.nextLine();

        String endereco = "https://www.omdbapi.com/?t=" + busca + "&apikey=24956ced";


        HttpClient client = HttpClient.newHttpClient();
        HttpRequest request = HttpRequest.newBuilder()
                .uri(URI.create(endereco))
                .build();
        HttpResponse<String> response = client
                .send(request, HttpResponse.BodyHandlers.ofString());
        System.out.println(response.body());
    }
}
1 resposta

Oi, Alfredo! Como vai?
Agradeço por compartilhar seu código com a comunidade Alura.

Muito bom como você seguiu o fluxo da aula, usando HttpClient, HttpRequest e leitura via Scanner pra montar a requisição dinamicamente. Sua implementação deixa claro o entendimento do processo de consumo da API do OMDb.

Se você quiser testar, pode tratar a resposta antes de exibir, validando se o filme foi encontrado. Algo assim:


if (response.body().contains("Error")) {
    System.out.println("Filme nao encontrado");
} else {
    System.out.println(response.body());
}

Esse código verifica se a resposta contem um erro e evita mostrar um retorno inesperado ao usuário.

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