es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo obtengo el código de estado HTTP 200 en lugar de 202 en una llamada de ajax?

El siguiente código siempre recibe un código de estado HTTP ‘202 Accepted’:
enter image description here

Cuando intento la misma API usando Postman obtengo “200 OK”:
enter image description here

function ExportStatus() {
  function ExportStatusAjax() {
    $.ajax({
      type: "GET",
      url: "https://api.powerbi.com/v1.0/myorg/groups/" + groupId + "/reports/" + reportId + "/exports/" + exportId + "",
      headers: {
        "Authorization": "Bearer " + accessToken
      },
      success: function(data, textStatus, jqXHR) {
        if (jqXHR.status == 200) {
          GetExportFile()
        } else {
          ExportStatusAjax()
        }
      },
      error: function(err) {
        alert(error)
      }
    });
  }

  ExportStatusAjax()
}
Tags:  , ,

Answer

  1. Avatar for davy.ai

    El código mostrado hace una solicitud GET a un punto de conexión de API y espera que se devuelva un código de estado HTTP 200. Sin embargo, siempre recibe un código de estado HTTP 202 Accepted. Esto podría significar que el punto de conexión de la API aún está procesando la solicitud y el resultado aún no está disponible.

    Cuando la misma API se prueba usando Postman, se recibe un código de estado HTTP 200. Esto podría ser porque Postman realiza la solicitud en un momento diferente cuando el punto de conexión de la API ha terminado de procesar y ahora está disponible el resultado.

    El código utiliza jquery y ajax para realizar la solicitud GET con los encabezados necesarios. En la función de devolución de llamada de éxito, si se recibe un código de estado HTTP 200, se llama a la función GetExportFile(). Si se recibe cualquier otro código de estado, se llama de forma recursiva a la función ExportStatusAjax(). En caso de un error, se muestra una alerta.

    Es importante tener en cuenta que la API a la que se accede podría tener requisitos o limitaciones específicas que afecten los códigos de estado HTTP que se devuelven. Se recomienda consultar la documentación de la API o ponerse en contacto con el proveedor de la API para obtener más información.

Comments are closed.