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

Quando coloca um nome de filme tipo Toy Story com espaço dá erro, como tratar o espaço?

Exception in thread "main" java.lang.IllegalArgumentException: Illegal character in query at index 30: https://www.omdbapi.com/?t=toy story&apikey=6585022c at java.base/java.net.URI.create(URI.java:903) at br.com.link.screen.match.services.OmdbApiService.main(OmdbApiService.java:28) Caused by: java.net.URISyntaxException: Illegal character in query at index 30: https://www.omdbapi.com/?t=toy story&apikey=6585022c at java.base/java.net.URI$Parser.fail(URI.java:2970) at java.base/java.net.URI$Parser.checkChars(URI.java:3141) at java.base/java.net.URI$Parser.parseHierarchical(URI.java:3229) at java.base/java.net.URI$Parser.parse(URI.java:3171) at java.base/java.net.URI.(URI.java:620) at java.base/java.net.URI.create(URI.java:901) ... 1 more

2 respostas
solução!

fiz da seguinte forma e funcionou url = url.replaceAll(" ", "+");

mas com o String urlCodificada = URLEncoder.encode(url, StandardCharsets.UTF_8.toString());

dá erro.

Olá Fernando,

O erro que você está recebendo é devido ao espaço no nome do filme. Para tratar esse espaço, você pode substituí-lo por "%20", que é o código de escape para espaço em URLs. Dessa forma, o nome do filme ficaria "toy%20story" na URL.

Por exemplo, a URL ficaria assim: https://www.omdbapi.com/?t=toy%20story&apikey=6585022c

Espero ter ajudado e bons estudos!