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

335
Vistas
ReferenceError: XMLHttpRequest no está definido

Antes de decir nada, sí, he probado muchas soluciones en el sitio. Iré en detalle sobre lo que he intentado más adelante en la publicación. Estoy ejecutando el siguiente código para importar un archivo xml en el mismo directorio que este archivo js. Dentro de la declaración if, cuando se carga el archivo, envía su contenido a un archivo html también en el mismo directorio, además de ejecutar fillCourseSelection(), que hace algunas cosas no relacionadas con los datos del archivo xml.

 loadXMLFile(){ //let XMLHttpRequest = require("xhr2"); let httpReq = new XMLHttpRequest(); httpReq.onreadystatechange = function() { if (this.readyState === 4 && this.status === 200) { document.getElementById("test").innerHTML = this.responseText; this.fillCourseSelection(this.XMLFileName); } }; httpReq.open("GET", this.XMLFileName, true); httpReq.send();

Ejecutar este código dentro del archivo js en WebStorm me da el error en el título, diciendo que XMLHttpRequest no está definido.

Antes de enumerar las cosas que probé, este código se incluye en la instrucción if, pero solo si se importa y se ejecuta en el archivo html al que se envía este código. es decir, funciona en nuestro sitio web, pero la razón por la que necesito corregir el "error" es porque mi depurador no puede pasar de "let httpReq = new XMLHttpRequest();" línea. Por lo tanto, no puedo averiguar cuál es el problema con el resto de mi código en this.fillCourseSelection() hasta que solucione este error.

Cosas que he probado:

  1. He intentado usar require("xhr2"); Puede ver la línea que comenté para la importación para que reconozca cuál es la solicitud. Todo lo que hace es darme este error cuando llamo al método send(): throw new NetworkError( Unsupported protocol ${this._url.protocol} ); la depuración muestra readyState = 1 y status = 0.
  2. He intentado usar let XMLHttpRequest = require("xmlhttprequest").XMLHttpRequest; en lugar de la línea xhr2. Esto soluciona el error en el archivo js, pero ahora, cuando ejecuto el archivo html, la instrucción if falla y no envía los datos al archivo html. Cuando depuro y ejecuto el código, this.readyState = 1 y this.status = 0.

Realicé estos dos pasos con las importaciones correctas ejecutando los comandos npm que se encuentran en los foros de Stack Overflow de donde provienen estas soluciones. Lo siento si ya hay una respuesta, pero he estado buscando durante horas y no puedo encontrar una solución a mi problema específico.

Si pudieras orientarme sería de gran ayuda, gracias!

about 4 years ago · Juan Pablo Isaza
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