CGI::Application. Дополнительные методы приложений CGI::Application

Частичный перевод CGI::Application / More Application Methods. Вторая из четырех частей перевода. Остальные будут опубликованы позднее.
Примеры кода — авторские.

delete()

Метод delete() удаляет установленный с помощью param() параметр. Метод действует аналогично методу delete() модуля CGI.pm .

dump()

Результат:

Метод dump() полезен при отладке программ. Возвращает информацию об окружении и параметрах запроса. Возвращаемая информация отформатирована для удобства восприятия.

dump_html()

Тоже самое, что и $self->dump() , но результаты выполнения возвращаются в формате html. Результат выполнения функции можно отсылать на вывод браузеру.

error_mode()

Метод error_mode() назначает специальный режим для ситуаций, когда неожиданно умирает выполняющийся режим.

Метод позволяет перед завершением работы вывести специальную страницу, список ошибок или сделать записи в логи.

get_current_runmode()

Метод get_current_runmode() возвращает название режима приложения, который реализуется в текущий момент времени. Если метод вызывается слишком рано, и процесс выполнения приложения еще не дошел до момента определенения режима — функция вернет undef.

header_add()

Метод header_add() используется для добавления / изменения параметров исходящих заголовков запросов. Все передаваемые параметры в конечном счете будут переданы методу header() модуля CGI.pm. Данный метод удобно использовать для работы с Cookies.

header_props()

Метод header_props() устанавливает HTTP заголовки . Все установленные параметры будут переданы на выполнение методам header() и redirect() модуля CGI.pm.

При добавлении заголовков через метод header_props() надо учитывать, что он обнулит все заголовки, которые были установлены ранее и установит свои. Если требуется добавить заголовки к уже существующим — следует использовать header_add() .

Если выполнить header_props() без параметров, он вернет хэш массивов — список всех заголовков, которые запланировано передать клиенту.

header_type()

С помощью метода header_type() можно задать заголовки для перенаправления запроса на другой URL или указать, чтоб фреймворк не возвращал серверу вообще никаких заголовков.

mode_param()

Данный метод вызывается из метода setup() и предназначен для вмешательства в процесс определения режима, в котором будет выполняться приложение.

Есть несколько вариантов использования mode_param() .

1) Методу передается название параметра, значение которого будет определять
режим приложения.

2) Методу mode_param() передается ссылка на подпрограмму, которая определяет режим
по одной ей известным критериям, и возвращает название запускаемого режима.

prerun_mode()

prerun_mode() — метод, предназначенный для использования только в рамках cgiapp_prerun(). Позволяет в последний момент переназначить обработчик режима, который будет запущен сразу после выполнения cgiapp_prerun().