Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 16.02.2018, 10:56
Интересующийся
Отправить личное сообщение для antonhauff Посмотреть профиль Найти все сообщения от antonhauff
 
Регистрация: 16.10.2017
Сообщений: 23

Что записать в блок catch (err)?
Всем добра. Есть некий скрипт, который запускается через Tampermonkey на некотором сайте. Порой он может проработать до 24 часов без нареканий. Порой, останавливается через полчаса после запуска. Посоветовали затолкать код скрипта в конструкцию типа:
try {
// код ...
} catch (err) {
// обработка ошибки
}

Я не знаю почему скрипт останавливается и мне требуется узнать. Может это какая-то ошибка в самом скрипте, а может это ошибка сайта - я не знаю. Подскажите, что писать в блоке catch для моей ситуации
Ответить с цитированием
  #2 (permalink)  
Старый 16.02.2018, 11:09
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,789

Если вы не знаете, что нужно писать в блоке catch, то нужна ли вам это конструкция вообще?
Из "err" можно вытянуть информацию об ошибке, как с ней поступить решать только вам.
Можете проигнорировать её, отправить на сервер или вывести в консоль (хотя это будет выполнено и без try catch).
Ответить с цитированием
  #3 (permalink)  
Старый 16.02.2018, 11:10
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,202

Сообщение от antonhauff
Подскажите, что писать в блоке catch для моей ситуации
Для начала можно записать так
try {
// код ...
} catch (err) {
   console.log(err);
   alert('Error!');
};

Потом смотри какая информация к тебе пришла... Может найдешь что полезное там для себя...
Ответить с цитированием
  #4 (permalink)  
Старый 16.02.2018, 13:50
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

https://developer.mozilla.org/ru/doc...ts/try...catch
Ответить с цитированием
  #5 (permalink)  
Старый 20.02.2018, 11:58
Интересующийся
Отправить личное сообщение для antonhauff Посмотреть профиль Найти все сообщения от antonhauff
 
Регистрация: 16.10.2017
Сообщений: 23

Дело в том, что скрипт перестает работать.
Ошибка, из-за которого останавливается скрипт следующая POST 500 () jquery.js:1.
Ответить с цитированием
  #6 (permalink)  
Старый 20.02.2018, 11:58
Интересующийся
Отправить личное сообщение для antonhauff Посмотреть профиль Найти все сообщения от antonhauff
 
Регистрация: 16.10.2017
Сообщений: 23

Ошибка, из-за которого останавливается скрипт следующая POST 500 () jquery.js:1.
Ответить с цитированием
  #7 (permalink)  
Старый 20.02.2018, 12:06
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,789

antonhauff, это, вероятно, ошибка сервера, а не jq-скрипта.
Обрабатывайте некорректные ответы от сервера и ошибки выполнения скрипта можно будет избежать.
$.post('/script.php',function(){
    alert('Запрос выполнен');
}).fail(function(){
    //Этот блок будет выполнен в случае ошибки
    alert('Что-то пошло не так');
});
Ответить с цитированием
  #8 (permalink)  
Старый 20.02.2018, 12:10
Интересующийся
Отправить личное сообщение для antonhauff Посмотреть профиль Найти все сообщения от antonhauff
 
Регистрация: 16.10.2017
Сообщений: 23

Сообщение от Nexus Посмотреть сообщение
antonhauff, это, вероятно, ошибка сервера, а не jq-скрипта.
Обрабатывайте некорректные ответы от сервера и ошибки выполнения скрипта можно будет избежать.
$.post('/script.php',function(){
    alert('Запрос выполнен');
}).fail(function(){
    //Этот блок будет выполнен в случае ошибки
    alert('Что-то пошло не так');
});
Тут мой косяк, не так выразился
Да, ошибка сервера. То есть это выражение я вставляю в блок catch?
Ответить с цитированием
  #9 (permalink)  
Старый 20.02.2018, 13:02
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,789

antonhauff, он вообще не нужен.
Ответить с цитированием
  #10 (permalink)  
Старый 20.02.2018, 13:08
Интересующийся
Отправить личное сообщение для antonhauff Посмотреть профиль Найти все сообщения от antonhauff
 
Регистрация: 16.10.2017
Сообщений: 23

Сообщение от Nexus Посмотреть сообщение
antonhauff, это, вероятно, ошибка сервера, а не jq-скрипта.
Обрабатывайте некорректные ответы от сервера и ошибки выполнения скрипта можно будет избежать.
$.post('/script.php',function(){
    alert('Запрос выполнен');
}).fail(function(){
    //Этот блок будет выполнен в случае ошибки
    alert('Что-то пошло не так');
});
Сообщение от Nexus Посмотреть сообщение
antonhauff, он вообще не нужен.
Тогда куда вставлять эти строчки кода?)
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
help !!! Ошибка npm install bignum Dimasw Node.JS 1 23.05.2016 13:50
Копирование блоков в блок maximus Events/DOM/Window 1 14.09.2013 19:40
Проблемы при установке модулей node.js tadjik1 AJAX и COMET 1 18.03.2012 02:20
Как (эффективно) изучать JavaScript? JSTalker Общие вопросы Javascript 33 23.12.2010 03:13
Браузер доказывает что не видит функцию SleepWalker Общие вопросы Javascript 7 17.06.2009 23:14