Solucionado (ver solución)
Solucionado
(ver solución)
3
respuestas

[Duda] error code: 522

Buenos compañeros, un gusto saludar...

Siguiendo el ejercicio "Implementando la comunicación con el Web Service" He recibido el "error code: 522" De los HTTP códigos de status.

El código con el api key personal es el siguiente:

inicio

package 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;

public class PrincipalConBusqueda {
    public static void main(String[] args) throws IOException, InterruptedException {
        HttpClient client = HttpClient.newHttpClient();
        HttpRequest request = HttpRequest.newBuilder()
            .uri(URI.create("https://www.omdbapi.com/?i=tt3896198&apikey=26008335"))
            .build();
        HttpResponse<String> response = client
            .send(request, HttpResponse.BodyHandlers.ofString());

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

termino

También, intente utilizar la nomenclatura para la .uri https://www.omdbapi.com/?t=jaws&apikey=26008335 y obtengo el mismo error 522.

Cuando realizo estas pruebas GET dentro de Postman, el código es 200 OK.

Podrían orientarme por favor para resolver esta situación

muchas gracias de antemano

Saludos

3 respuestas
solución!

¡Hola Alberto!

Entiendo que estás teniendo problemas con el código que estás utilizando para consumir la API de OMDB. El error code: 522 que estás recibiendo generalmente está relacionado con problemas de conexión con el servidor. Es interesante que mencionas que al realizar las pruebas GET dentro de Postman, el código es 200 OK, lo que indica que la solicitud se realizó con éxito.

Una posible solución para este problema podría ser manejar las excepciones que pueden ocurrir al realizar la solicitud HTTP. Java nos sugiere agregar excepciones para manejar posibles problemas de conexión, por lo que podrías considerar agregar el manejo de excepciones en tu código.

Además, es importante asegurarse de que la URL que estás utilizando sea la correcta y que la API key esté configurada adecuadamente. Asegúrate de que la URL y la API key sean válidas y estén funcionando correctamente.

Aquí tienes un ejemplo de cómo podrías manejar las excepciones en tu código:

public static void main(String[] args) {
    try {
        HttpRequest request = HttpRequest.newBuilder()
                .uri(URI.create("https://www.omdbapi.com/?t=Matrix&apikey=4b4146e7"))
                .build();

        HttpClient client = HttpClient.newHttpClient();

        HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());

        System.out.println(response.body());
    } catch (IOException | InterruptedException e) {
        e.printStackTrace();
    }
}

Recuerda que este es solo un ejemplo y que deberías adaptarlo a tu código existente. Espero que esta sugerencia te ayude a resolver la situación que estás enfrentando. ¡Buena suerte!

Espero haber ayudado y buenos estudio

Saludos,

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios!

Buenos dias! Sabes que anoche yo tenia el mismo error.. Maneje las excepciones pero igual que vos, en postman funcionaba bien. Hoy a la mañana probé el programa y funcionaba normal. No pude saber al igual que vos, cual fue el motivo de ese error.

Gracias Luis Puig por compartir código try-catch +1,000 puntos => 200 OK

Gracias Leonardo Gramajo, hoy por la mañana funciona correctamente desde postman y desde java

Error de comunicación hacia el servidor, la falla que identifico es, fuera de mi equipo de cómputo.

Saludos ambos