Формат ответа сервлета для обработчика ошибок dojo xhrPost - PullRequest
3 голосов
/ 03 августа 2011

Для запуска обработчика ошибок для xhrPost додзё, существует ли определенный формат, в котором должен отправляться ответ сервера? Или просто установив код состояния на требуемый код ошибки в объекте HttpServletResponse, можно выполнить работу.

Спасибо, RR

1 Ответ

3 голосов
/ 04 августа 2011

Вам нужно только установить соответствующий код состояния HTTP в HttpServletResponse. Я думаю, что все, что больше или равно 400, будет считаться ошибкой объектом XHR.

Конечно, вы также можете отправлять фактический контент в своем ответе (через поток вывода) и устанавливать его тип контента. Вы также получите это в своем обработчике:

dojo.xhrPost({
  url: '/request',
  load: function(data, ioargs) { /* ... */ },
  error: function(error, ioargs) {
    // error is a Javascript Error() object, but also contains 
    // some other data filled in by Dojo
    var content = error.responseText;   // response as text
    var status = error.status;          // status code
  }
});

Вы также можете получить responseText и status от ioargs.xhr, который является полным XmlHttpRequest объектом.

...