Как устранить «Ошибка скрипта» в JavaScript глобальный обработчик ошибок? - PullRequest
0 голосов
/ 20 сентября 2018

У меня есть глобальный обработчик ошибок, поэтому я могу регистрировать ошибки в моем JavaScript и публиковать их через AJAX на моем сервере.Это выглядит так:

window.addEventListener('error', function(event) {
  // pull error info from event
  // post to server via AJAX
});

Иногда хорошо работает.Однако я получаю много уведомлений об ошибках, где сообщение Script error, стек undefined, строка и столбец 0.

Мой комплект JavaScript находится в CDN с другим URLс реального веб-сайта, поэтому я добавил атрибут crossorigin="anonymous" к своим элементам <script> и обновил CDN, добавив заголовок ответа Access-Control-Allow-Origin: *.Это уменьшило количество неинформативных Script error уведомлений, но не устранило их все.

Я прочитал, что любые обратные вызовы, которые могут вызвать ошибку, приведут к уведомлению Script error, так как стек недоступенк окну.Я хотел попробовать обернуть обратные вызовы с помощью try / catch, где блок catch перебрасывает ошибку - в надежде, что окно получит доступ к полезной информации об ошибке.

Однако я не могу воспроизвестиScript error s.Я добавил строчку из нескольких разных обработчиков событий щелчка, и когда обработчики запускаются, мой глобальный обработчик ошибок фиксирует ошибки со всей имеющейся информацией стека.

Во-первых, как я могу воспроизвести простой Script error в обратном вызове?

Во-вторых, является ли мой план упаковки обратных вызовов правильным способом сбора значимой информации об ошибках?

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