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

1.1K
Visualizações
Infracción de Chrome: [Violación] El controlador tomó 83 ms de tiempo de ejecución

Estoy tratando de implementar la funcionalidad de cierre de sesión de Facebook en mi proyecto. El inicio de sesión funciona bien. Pero me enfrento a recibir el siguiente mensaje en la consola de JavaScript con el código de cierre de sesión.

[Violación] La tarea JavaScript de ejecución prolongada tomó 318 ms session.php:51 1 sdk.js:135

[Violación] El controlador tomó 83 ms de tiempo de ejecución (50 ms permitidos)

Intenté buscar otros hilos similares y esas soluciones no me funcionaron. Intenté eliminar partes de mi código y ver qué parte está dando problemas. Está bastante claro que está recibiendo el error debido al JS SDK de Facebook como se ve en el mensaje. También he deshabilitado todas mis extensiones de Chrome.

El código funciona bien en Firefox pero no en Chrome ni en Opera . ¿Hay algún método para extender esta duración del tiempo de espera? O cualquier otro método para solucionar este problema en Chrome. Aquí está mi código para cerrar la sesión.

 <?php session_start(); //echo $_SESSION["current_user"]; //echo $_COOKIE["current_user"]; session_destroy(); unset($_COOKIE["current_user"]); setcookie("current_user","",time() -3600, "/","", 0); //header("location: login.php"); ?> <!doctype html> <html> <head> </head> <body> <script> // Default settings window.fbAsyncInit = function() { FB.init({ appId : '<app-id>', cookie : true, xfbml : true, version : 'v2.8' }); FB.AppEvents.logPageView(); }; (function(d, s, id){ var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) {return;} js = d.createElement(s); js.id = id; js.src = "//connect.facebook.net/en_US/sdk.js"; fjs.parentNode.insertBefore(js, fjs); }(document, 'script', 'facebook-jssdk')); window.onload = function(){ logout(); } function logout(){ console.log("1"); FB.getLoginStatus(function(response) { if (response.status === 'connected') { FB.logout(); console.log("2"); window.location="login.php"; console.log("3"); } else{ console.log("4"); window.location="login.php"; console.log("5"); } }); } </script> </body> </html>

Por razones obvias, eliminé el App-Id del código. Cualquier ayuda es apreciada. :)

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

0

Las "infracciones de Chrome" no representan errores ni en Chrome ni en su propia aplicación web. En cambio, son advertencias para ayudarlo a mejorar su aplicación. En este caso, Long running JavaScript y took 83ms of runtime que probablemente haya una oportunidad para acelerar su secuencia de comandos.

("Violación" no es la mejor terminología; se usa aquí para implicar que la secuencia de comandos "viola" una directriz predefinida, pero "advertencia" o similar sería más claro. Estos mensajes aparecieron por primera vez en Chrome a principios de 2017 e idealmente deberían tener una Mensaje "Más información" para explicar el significado y dar acciones sugeridas al desarrollador. Con suerte, se agregarán en el futuro).

over 4 years ago · Santiago Trujillo Relatório

0

Tal vez un poco fuera de tema, solo tenga en cuenta que este tipo de mensajes también se pueden ver cuando está depurando su código con un punto de interrupción dentro de una función asíncrona como setTimeout como se muestra a continuación:

 [Violation] 'setTimeout' handler took 43129ms

Ese número (43129ms) depende de cuánto tiempo se detenga en su función asíncrona

over 4 years ago · Santiago Trujillo Relatório

0

Parece que ha encontrado su solución, pero aún así será útil para otros, en esta página sobre el punto basado en Chrome 59.

4.Observe el triángulo rojo en la parte superior derecha del evento Animation Frame Fired. Cada vez que vea un triángulo rojo, es una advertencia de que puede haber un problema relacionado con este evento.

Si se desplaza sobre este triángulo, puede ver que esos son los errores del controlador de violaciones y según el punto 4. sí, hay algún problema relacionado con ese evento.

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