Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Dúvida] Erro na requisição da API

Amigo(a)s, tentei sem êxito achar o erro na requisição da API. Peço, gentilmente, se alguém conseguir identificar , por favor, responda aqui.

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

2 respostas
solução!

Olá, Heleno! Pelo que pude observar na imagem, parece que o erro que você está enfrentando é uma IllegalArgumentException com a mensagem "Illegal character in query at index 56". Isso indica que há um caractere inválido na sua URL de consulta à API.

Analisando o trecho de código que aparece na imagem, vejo que você está tentando concatenar a variável busca diretamente na URL. No entanto, se o usuário digitar um texto que contém espaços ou caracteres especiais, isso pode gerar uma URL inválida, pois esses caracteres precisam ser codificados para serem usados em URLs.

Para resolver esse problema, você pode utilizar a classe URLEncoder do Java para codificar a string de busca antes de concatená-la na URL. Aqui está um exemplo de como você pode fazer isso:

import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;

// ...

String buscaEncoded = URLEncoder.encode(busca, StandardCharsets.UTF_8.toString());
String endereco = "https://www.omdbapi.com/?t=" + buscaEncoded + "&apikey=coloque_sua_apikey";

// ...

Com essa alteração, os caracteres especiais na variável busca serão codificados de forma adequada para uso em URLs, e isso deve resolver o erro que você está enfrentando.

Espero que essa sugestão resolva o problema! Se precisar de mais alguma ajuda, não hesite em perguntar. Espero ter ajudado e bons estudos!

Muitíssimo obrigado Renan Lima!