Установите точку останова в XHR в Chrome

У меня есть страница, которая отправляет запрос XHR, когда форма отправлена, и я хотел бы заставить Chrome повреждаться, когда это получает ответ. Это походит на лучший способ выполнить, это было бы то, если Chrome имеет функцию JavaScript, которую я могу вызвать, который повреждает выполнение, но я не мог найти что-либо как этот до сих пор. Есть ли другое решение?

Править:

Мне на самом деле не определили обратный вызов для запроса, таким образом, я не могу установить точку останова тот путь. Запрос отправляется с этой строкой кода jQuery:

$.post(this.action, $(this).serialize(), null, "script");

где this элемент формы. null аргумент - то, где Вы обычно определяли бы обратный вызов, но с "script" аргумент, необработанный JavaScript возвращается сервером и затем непосредственно выполняется, таким образом, кажется, что единственный способ повредиться и ступить через код с debugger; оператор. Это работает, но при продвижении через код Вы не можете на самом деле видеть, какая строка Вы идете так, это является немного неловким. Я подозреваю, что это - ограничение средств отладки Chrome.

21
задан delivarator 15 July 2010 в 18:27
поделиться

1 ответ

Вы можете просто установить точку останова в обратном вызове успеха и выполнить шаг через отладчик. Чтобы установить точку останова:

  1. Откройте "Инструменты разработчика" и перейдите на вкладку "Скрипты" вверху.
  2. Выберите сценарий, содержащий обратный вызов успеха для вашего AJAX-запроса.
  3. Нажмите на номер строки с левой стороны, где вы хотите установить точку останова. Появится синяя стрелка, указывающая на то, что точка останова установлена.
  4. Затем выполните AJAX-запрос, как обычно, и отладчик автоматически остановится на установленной вами точке останова.

В качестве альтернативы вы можете использовать оператор debugger для автоматического вызова отладчика. Таким образом, ваш обратный вызов успеха может выглядеть так:

success: function(data, textStatus, request) {
    debugger; // pause execution and opens debugger at this point
    ...
}

Также ознакомьтесь с этой замечательной статьей об отладке JavaScript.

Однако первый подход лучше, поскольку он не требует изменения вашего кода.

14
ответ дан 29 November 2019 в 20:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: