Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Projeto] Projeto API OMDb

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 PrincipalComBuscar {
    public static void main(String[] args) throws IOException, InterruptedException {
        Scanner scanner = new Scanner(System.in);
        System.out.println("Qual Nome do Filme: ");
        var buscar = scanner.nextLine();
        System.out.println("Chave para concluir a requisição: ");
        var chave = scanner.nextLine();
        String endereco = "http://www.omdbapi.com/?t="+buscar+"&apikey="+ chave;

        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());

umas das maneiras que acabei vendo de não deixa a apikey na própria linha de comando e fazer o usuário esta solicitando a mesma, sei que tem maneiras melhores porem como iniciante nessa parte foi uma ideia um tanto simples que vir quando estava olhando pelo fórum e procurei testa e acabou que funcionou, isso não muda o fato de que preciso busca ainda mais conhecimento só foi uma formula de deixa registrado meu progresso para que no futuro eu possa identifica o meu crescimento junto com a plataforma de estudo

1 resposta
solução!

Oi, Reinaldo! Como vai?

Você implementou uma forma prática e funcional de consumir a API do OMDb pedindo a chave e o nome do filme via Scanner. Isso ajuda a evitar deixar a apikey exposta diretamente no código, o que é uma preocupação importante. Seu código já utiliza o HttpClient do Java de maneira adequada para fazer a requisição e imprimir a resposta da API.

Uma dica interessante para o futuro é usar o método trim() na entrada do usuário para garantir que espaços em branco não atrapalhem a requisição, como neste exemplo:


String buscar = scanner.nextLine().trim();
String chave = scanner.nextLine().trim();

Isso remove espaços no início e no fim da string, evitando erros comuns em requisições.

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