Входящие запросы
Входящие запросы могут быть нескольких типов, основные из них это GET и POST
Определить типа запроса в модуле/дополнении можно путем вызова следующих методов:
if ($this->isGET()) {
// запрос типа GET
}
if ($this->isPOST()) {
// запрос типа POST
}
if ($this->isAJAX()) {
// AJAX запрос
}
Вне контекста модулей также доступен общий класс Request
:
Request::isGET();
Request::isPOST();
Request::isAJAX();
Контекст запроса
Запрос может быть в разном контексте: Frontend, Админ-панель, Cron-задача
Для определения контекста используются следующие методы:
if (bff::cron()) {
// Запрос выполнен в рамках фоновой задачи запущеной cron-менеджером
}
if (bff::adminPanel()) {
// Запрос выполнен в рамках работы с Админ-панелью
}
Также доступны и другие вспомогательные методы для получения данных о запросе:
# IP адрес запроса
$ip = Request::remoteAddress();
# HOST запроса
$host = Request::host();
# URL запроса
$url = Request::url();
# URL запроса с параметрами (?test=1)
$url2 = Request::url(true);
# Заголовок HTTP_REFERER запроса
$referer = Request::referer();
# Заголовок HTTP_USER_AGENT запроса
$agent = Request::userAgent();
# Протокол запроса (http/https)
$scheme = Request::scheme();
# HTTPS запрос
$https = Request::isHTTPS();
# Метод запроса: GET, POST, PUT, DELETE, ...
$method = Request::method();