Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

123
Visualizações
Captura de errores entre dominios de XMLHttpRequest

¿Hay alguna forma de detectar un error causado por Access-Control-Allow-Origin al realizar una solicitud? Estoy usando jQuery, y el controlador establecido en .ajaxError() nunca recibe una llamada porque, para empezar, nunca se realiza la solicitud.

¿Hay algún trabajo alrededor?

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

Para las solicitudes de CORS, el controlador onError de XmlHttpRequest debería activarse. Si tiene acceso al objeto XmlHttpRequest sin procesar, intente configurar un controlador de eventos como:

 function createCORSRequest(method, url){ var xhr = new XMLHttpRequest(); if ("withCredentials" in xhr){ xhr.open(method, url, true); } else if (typeof XDomainRequest != "undefined"){ xhr = new XDomainRequest(); xhr.open(method, url); } else { xhr = null; } return xhr; } var url = 'YOUR URL HERE'; var xhr = createCORSRequest('GET', url); xhr.onerror = function() { alert('error'); }; xhr.onload = function() { alert('success'); }; xhr.send();

Tenga en cuenta algunas cosas:

  • En las solicitudes de CORS, el archivo console.log del navegador mostrará un mensaje de error. Sin embargo, ese mensaje de error no está disponible para su código JavaScript (creo que esto se hace por razones de seguridad, hice esta pregunta una vez antes: ¿Es posible detectar errores de CORS? ).

  • El xhr.status y el xhr.statusText no están configurados en el controlador onError, por lo que realmente no tiene ninguna información útil sobre por qué falló la solicitud CORS. Solo sabes que falló.

over 4 years ago · Santiago Trujillo Relatório

0

Es posible obtener un estado de error así:

 xhr.onerror = function(e) { alert("Error Status: " + e.target.status); };

Fuente: https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest

over 4 years ago · Santiago Trujillo Relatório

0

Establezca un controlador para onerror y podrá detectar las excepciones entre dominios. No sé por qué se activa el evento onerror para las excepciones y no el evento de error , pero lo probé y funcionó.

 req = $.get('http://www.example.com'); req.onerror = function() { alert('An exception occurred.') };
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda