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

119
Visualizações
Solicitud de Ajax para detener todo el sitio web durante el tiempo de trabajo

Tengo un problema con una gran solicitud de ajax: hago una consulta en un archivo php que hace una solicitud de curl, tarda entre 15 y 20 segundos en completarse, luego devuelvo algo de json en mi página web. Es una solicitud clásica de ajax, pero descubrí un error extraño,

Cuando se ejecuta la consulta ajax (escriba GET), no puedo usar mi sitio web en Chrome, todas las páginas permanecen en blanco hasta que se completa la solicitud ajax,

Así que pensé que la solicitud de ajax había roto mi servidor, pero el sitio funciona perfectamente en otros dispositivos (móvil, otra sesión de Chrome, ...). Solo la sesión actual de Chrome se vuelve lenta y funciona solo cuando se completa la solicitud de ajax.

¿Podría explicarme por qué? Mi solicitud de ajax es básica:

 $.ajax({ url: '/controller.php', type: 'GET', dataType: "json", data: { action: "loadPageContent" }, success: function(retour) { localStorage.removeItem('myhtml'); if(retour.status && retour.htmlDatas){ storedDatas["posts"] = retour.htmlDatas; storedDatas["date_scrapping"] = retour.date_scrapping; localStorage.setItem("myhtml", JSON.stringify(storedDatas) ); // ¨Pour si relance $('#container').html(retour.htmlDatas); } else { alert('error'); } }, error: function(retour) { alert('error'); }, });
over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

use la promesa y maneje la respuesta:

 async function runCodes(){ //this code its gonna run async ajaxCall().then((response)=>{ if(response){ //true } else { //false } }); //some other codes } function ajaxCall(){ return new Promise((resolve) => { $.ajax({ url: '/controller.php', type: 'GET', dataType: "json", data: { action: "loadPageContent" }, success: function(retour) { localStorage.removeItem('myhtml'); if(retour.status && retour.htmlDatas){ storedDatas["posts"] = retour.htmlDatas; storedDatas["date_scrapping"] = retour.date_scrapping; localStorage.setItem("myhtml", JSON.stringify(storedDatas) ); // ¨Pour si relance $('#container').html(retour.htmlDatas); resolve(true); } else { alert('error'); resolve(false); } }, error: function(retour) { alert('error'); resolve(false); }, }); }); }
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