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

266
Visualizações
Cómo obtener datos xhr en javascript

Soy un novato en javascript e hice este script que se ejecuta en la carga de la página:

 function checkItem(itemToCheck) { console.log(`Checking if ${itemToCheck} is checked`) var url = `https://list.s40.repl.co/api/get-status/${itemToCheck}`; var xhr = new XMLHttpRequest(); xhr.open("GET", url); xhr.setRequestHeader("Accept", "application/json"); xhr.onreadystatechange = function () { if (xhr.readyState === 4) { console.log(xhr.status); console.log(xhr.responseText); }}; xhr.send(); if (status === 200) { console.log("The request worked") if (response == `True`) { console.log(`${itemToCheck} is true`) var checkbox = document.getElementById(`${itemToToggle}-checkbox`) //Control the checkbox } } }

Nunca muestra el texto "La solicitud funcionó", y parece ser porque xhr.status y xhr.responseText están en blanco fuera de la función en la que se encuentran. No sé nada sobre javascript y no sé cómo arreglar este. Todo lo que quiero hacer es poder solicitar datos y luego hacer algo con ellos si es igual a verdadero. Por favor ayuda

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Obtengo xhr.status == 0 , lo que significa que la solicitud falló. Cuando ejecuto la solicitud a través del cartero, aparece un error de SSL (el certificado ha caducado). Probablemente por eso falla la solicitud.

Sin embargo, ejecutarlo con fetch no es un problema. Así que buscar parece omitir el error de SSL. Sin embargo, no parece haber una manera de hacer que XMLHttpRequest ignore este error de SSL.

 fetch(`https://list.s40.repl.co/api/get-status/2`) .then(res => res.text()) .then(console.log)

Le aconsejo que verifique si solo puede usar fetch para la tarea. Solo los navegadores muy antiguos no lo admiten: https://caniuse.com/fetch

Es de nivel superior y async por naturaleza. Por lo general, debe preferir el código async al síncrono al escribir para el navegador, ya que el código síncrono bloquea la ejecución rápidamente y ralentiza la aplicación del navegador o incluso hace que se congele.

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