Считает ли googlebot пустые строки правдивыми? - PullRequest
0 голосов
/ 31 мая 2018

У меня есть этот код на всех страницах моего сайта для отслеживания ошибок JavaScript

<script>
        window.addEventListener('error', function(event) {
            if (!window.XMLHttpRequest && !window.JSON) {
                return;
            }
            if (!event.filename || !event.filename.includes("mywebsite.com")) {
                // Exclude external scripts
                return;
            }
            var httpRequest = new XMLHttpRequest();
            httpRequest.open('POST', '/post-js-error', true);
            httpRequest.setRequestHeader('Content-Type', 'application/json');
            httpRequest.send(JSON.stringify(event));
        });
    </script>

Второе утверждение if предназначено для исключения шума различных ошибок, не связанных с моим кодом (плагины браузера, которыелюди, внешние скрипты, которые я установил на своем веб-сайте и т. д.)

Вот что происходит: исключение работает довольно хорошо, за исключением одного случая.Я получаю ошибки от googlebots (пользовательский агент "Mozilla / 5.0 AppleWebKit / 537.36 (KHTML, как Gecko; совместимый; Googlebot / 2.1; + http://www.google.com/bot.html) Safari / 537.36"). Полученное имя файла является пустой строкой.ошибка не должна передавать условие if (! event.filename), но это так.

Почему это так?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...