Класс RequestHandler
Класс RequestHandler является базовым классом обработчиков запросов протокола HTTP.
Класс RequestHandler реализован в модуле google.appengine.ext.webapp.
Введение
Приложение на фреймворке webapp определяет один или несколько классов-наследников класса RequestHandler для обработки поступающих запросов пользователей. Класс обработчика перекрывает один или несколько следующих методов протокола HTTP, в зависимости от типа: get(), post(), head(), options(), put(), delete() или trace().
Конструктор
- classRequestHandler()
-
Базовый класс для всех обработчиков запросов протокола HTTP.
Конструктор не принимает никаких параметров. Экземпляр может быть проинициализирован с помощью метода initialize().
Методы экземпляра
Потомки класса RequestHandler наследуют или перекрывают следующие методы:
- get(*args)
- Вызывается для обработки запроса GET протокола HTTP. Перекрывается классом обработчика.
- post(*args)
- Вызывается для обработки запроса POST протокола HTTP. Перекрывается классом обработчика.
- put(*args)
- Вызывается для обработки запроса PUT протокола HTTP. Перекрывается классом обработчика.
- head(*args)
- Вызывается для обработки запроса HEAD протокола HTTP. Перекрывается классом обработчика.
- options(*args)
- Вызывается для обработки запроса OPTIONS протокола HTTP. Перекрывается классом обработчика.
- delete(*args)
- Вызывается для обработки запроса DELETE протокола HTTP. Перекрывается классом обработчика.
- trace(*args)
- Вызывается для обработки запроса TRACE протокола HTTP. Перекрывается классом обработчика.
- handle_exception(exception, debug_mode)
- Вызывается при выдаче исключения внутри обработчика. По умолчанию, метод handle_exception устанавливает код статуса протокола HTTP равным 500 ("Ошибка сервера"). Если параметр debug_mode установлен в
True, выводит стэк ошибок в браузер. В противном случае выдает простое сообщение об ошибке. Потомок класса RequestHandler может перекрывать этот метод для задания собственного поведения в случае ошибки.
- error(code)
- Удобный метод обработчика для возвращения заданного сообщения об ошибке. Очищает содержимое выходного потока и устанавливает код ошибки протокола HTTP в значение code. Эквивалентно вызову методов
self.response.clear() и self.response.set_status(code).
- redirect(uri, permanent=False)
- Удобный метод обработчика для перенаправления браузера на другой адрес. Устанавливает код ошибки протокола HTTP и заголовок ответа
Location: для перенаправления браузера пользователя по адресу uri и производит очистку потока вывода. Если параметр permanent установлен значением True, используется код статуса протокола HTTP равный 301 для указания постоянного перенаправления. В противном случае, используется код 302 для указания, что перенаправление временное.
- initialize(request, response)
- Инициализирует объекты экземпляра класса обработчика Request и Response. Этот метод обычно вызывается классом WSGIApplication после создания экземпляра класса обработчика.
Атрибуты экземпляра класса
Экземпляр потомка класса RequestHandler имеет следующие атрибуты:
request
- Экземпляр класса Request. Этот атрибут инициализируется классом WSGIApplication после создания объекта.
response
- Экземпляр класса Response. Этот атрибут инициализируется классом WSGIApplication после создания объекта.