2015-09-15 2 views

ответ

-2

Вы можете добавить это в свою команду ajax.

jQuery.ajax({// just showing error property 
      error: function(jqXHR,error, errorThrown) { 
       if(jqXHR.status&&jqXHR.status==400){ 
        alert(jqXHR.responseText); 
       }else{ 
        alert("Something went wrong"); 
       } 
      } 
}); 
+0

Привет, господа, это не относится к моему вопросу. Мой вопрос заключается не в том, как получить сообщение об ошибке в конкретном вызове ajax, мой вопрос в том, как получить полную трассировку стека в глобальном обратном вызове jQuery ajax. – ShP

1

Если вы используете хром Мне нравится использовать отладчик ключевое слово: https://developer.chrome.com/devtools/docs/javascript-debugging#printing-stack-traces Однако, в зависимости от характера проблемы, вы, возможно, придется сделать пропуск в асинхронном: ложь или использовать какой-либо другой стратегии, чтобы получить стек трассировки, которые вам могут понадобиться (вместо трассировки стека обратного вызова ошибки, что часто может быть менее интересным для вашей проблемы).

+0

Это выглядит многообещающим https://github.com/stacktracejs/stacktrace.js. Я проверю его завтра. – ShP

0

На firefox это довольно просто. Вы устанавливаете точку останова на внутренней стороне обработчика, запускаете ajax, и ваш браузер приостанавливает выполнение. На вкладке отладчика в Инструментах для развития просто нажмите подраздел «Вызов стека» в правой верхней части левой панели.

Firefox Debugger Call Stack

Там также console.trace(), если вы хотите распечатать трассировку стека.

+0

Привет @MinusFour, это правильно, но дело в том, что я не хочу делать это вручную, я хочу написать сценарий, из которого я хочу отслеживать исключения, и для этого мне нужна трассировка стека, а this console.trace() не является межсерверным решением. – ShP

Смежные вопросы