Вам нужно только установить соответствующий код состояния 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
объектом.