не удается отладить зависание $ .post в расширении firefox - PullRequest
1 голос
/ 31 октября 2011

Я разрабатываю это расширение https://builder.addons.mozilla.org/addon/1022928/latest/

Центральный код этого вопроса находится в Data / panel.js

И это работает довольно хорошо, за исключением того, что всякий раз, когда я нажимаю «Gem», чтобы опубликовать вызов jquery, он просто висит на значке загрузки, я не получаю никаких отзывов в консоли о том, почему вызов не проходит. и обрабатываются как следует.

Итак, как мне отладить это с помощью новой надстройки Firefox, бета-версия sdk builder. Я попытался записать в console.log () и прочитал, что он должен работать для других, но я действительно не вижу ни одного из своих сообщений журнала, только ошибки, которые являются синхронными в коде, и, следовательно, не ajax ошибки.

Возвращаясь к моему вопросу: как отладить зависший ajax-вызов на панели моего расширения Firefox?

1 Ответ

2 голосов
/ 31 октября 2011

Расширение HTTPFox показывает, что ваш запрос был успешно отправлен и в результате получен ответ 500 Internal Error.Таким образом, jQuery вызвал бы обратный вызов с ошибкой, но вы его не дали (см. jQuery.post() документация , третий параметр - обратный вызов success ).Чтобы определить функцию обратного вызова с ошибкой, вы должны в идеале использовать jQuery.ajax() метод напрямую:

$.ajax({
  type: "POST"
  url: url,
  data {title:$("#txtTitle").val(), url:encodeURIComponent(taburl)},
  success: function(data, textStatus) {
    ...
  },
  error: function(data, textStatus) {
    ...
  }
});

Или вы можете использовать request пакет дополненияSDK, который предоставляет аналогичный API.

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

...