Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

310
Vistas
Solicitudes de verificación previa de CORS que funcionan con jQuery AJAX, pero fallan con XmlHttpRequests nativos en Firefox

Esta pregunta se basa en un problema que tuve antes pero que nunca logré resolver.

Estoy ejecutando un script de usuario a través de FireMonkey que envía regularmente solicitudes a mi servidor backend, aquellos que usan CORS ya que son de dominio cruzado. Para fines de prueba, mis encabezados de respuesta actualmente están configurados de forma muy flexible en el lado del back-end:

 header("Access-Control-Allow-Origin: *"); header("Access-Control-Allow-Method: POST"); header("Access-Control-Allow-Headers: *");

En el lado frontal, mis solicitudes se envían a través de jQuery AJAX , y se ven más o menos así:

 $.ajax({ method: "POST", url: this.queryURL, timeout: this.timeout, data: this.formData, processData: false, contentType: false, success: onSuccess, error: onError });

Nada especial aquí, las solicitudes han funcionado bien desde entonces.

Quiero deshacerme de jQuery ahora y usar XmlHttpRequest nativo en su lugar. La implementación se ve así:

 const xhr = new XMLHttpRequest(); xhr.open("POST", this.queryURL); xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest'); xhr.timeout = this.timeout; xhr.ontimeout = onTimeout; xhr.onreadystatechange = () => { if (xhr.readyState !== 4 || xhr.status === 0) return; if (xhr.status !== 200) onError(xhr); else onSuccess(xhr.responseText); }; xhr.send(this.formData);

Por alguna razón, parece que las solicitudes ya no se envían en Firefox, al menos la pestaña de red no muestra ninguna. Al probarlo en Chrome todavía funciona, pero pensé que el problema podría tener algo que ver con las solicitudes de verificación previa, ya que noté algo extraño:

Con jQuery AJAX:

Con jQuery AJAX

Con XHR nativo:

Con XHR nativo

Al usar XHR nativo, parece que Chrome siempre tiene una primera solicitud de verificación previa que falla, y una segunda tiene éxito. Esto no sucede con AJAX . No estoy seguro de si esto es útil de alguna manera, pero ¿podría explicar por qué las solicitudes siguen fallando en Firefox y cómo resolverlo?

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Después de investigar un poco más, finalmente descubrí que en realidad se trata de un problema relacionado con Firefox con los scripts de usuario: https://bugzilla.mozilla.org/show_bug.cgi?id=1715249

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda