Chrome 违规:\[Violation\] 处理程序花费了 83 毫秒的运行时间

新手上路,请多包涵

我正在尝试在我的项目中实现 Facebook 的注销功能。登录工作得很好。但是我面临着在带有注销代码的 JavaScript 控制台中收到以下消息。

[违规] 长时间运行的 JavaScript 任务耗时 318ms session.php:51 1

sdk.js:135

[违规] 处理程序占用了 83 毫秒的运行时间(允许 50 毫秒)

我试图搜索其他类似的线程,但这些解决方案对我来说并不奏效。我尝试删除部分代码,看看哪一部分出现问题。很明显,由于消息中看到的 Facebook 的 JS SDK,它得到了错误。我还禁用了我的所有 Chrome 扩展程序。

该代码 在 Firefox 中运行良好,在 Chrome 和 Opera 中却不行。有什么方法可以延长这个超时时间吗?或任何其他在 chrome 中解决此问题的方法。这是我的注销代码。

<?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>

出于显而易见的原因,我从代码中删除了 App-Id。任何帮助表示赞赏。 :)

原文由 FreeKrishna 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.4k
1 个回答

“Chrome 违规”并不表示 Chrome 或您自己的网络应用程序中存在错误。相反,它们是帮助您改进应用程序的警告。在这种情况下, Long running JavaScripttook 83ms of runtime 提醒您可能有机会加速您的脚本。

(“违反”不是最好的术语;这里用它来暗示脚本“违反”了预定义的准则,但“警告”或类似的东西会更清楚。这些消息于 2017 年初首次出现在 Chrome 中,理想情况下应该有一个“更多信息”提示详细说明含义并向开发人员提供建议操作。希望将来会添加这些内容。)

原文由 mahemoff 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题