Как я могу возвратить 404/50x код статуса из Контроллера Grails?

Преобразование типа SimpleXMLObject к строке:

$foo = array( (string) $xml->channel->item->title );

вышеупомянутый код внутренне звонит __toString() на SimpleXMLObject. Этот метод не общедоступен, поскольку он вмешивается в отображающуюся схему SimpleXMLObject, но он может все еще быть вызван вышеупомянутым способом.

53
задан Jack Chu 15 September 2009 в 09:18
поделиться

2 ответа

Достаточно установить статус ответа с помощью собственного оператора. Это не выглядит слишком уродливым и довольно простым:

response.status = 404;

Я сам успешно использовал это, и видел, как другие тоже делали это . Поскольку это всего лишь сеттер, вы также можете делать другие вещи после установки статуса. Какой бы статус вы ни установили последним, HttpServletResponse будет использовать, когда он фактически отправляет ответ обратно клиенту.

49
ответ дан 7 November 2019 в 08:23
поделиться

response.sendError и response.setStatus - единственные два известных мне способа. Если вы статический импорт HttpServletResponse , то это не то же самое, что «неграаля».

8
ответ дан 7 November 2019 в 08:23
поделиться
Другие вопросы по тегам:

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