Коннекторы
Последнее обновление Sep 2nd, 2026 | История страницы | Улучшить эту страницу | Сообщить о проблеме
Support the team building MODX with a monthly donation.
The budget raised through OpenCollective is transparent, including payouts, and any contributor can apply to be paid for their work on MODX.
Backers
Budget
$194 per month—let's make that $500!
Learn moreЧто такое коннектор¶
Коннектор: PHP-вход для AJAX (и похожих) запросов, которые должны запустить процессор. Он поднимает MODX, проверяет, что пользователь может загрузить контекст, и передаёт запрос в modX::request->handleRequest(), а тот вызывает runProcessor.
Сам коннектор базу не меняет. Это делают процессоры.
Коннектор ядра¶
Запросы менеджера к действиям ядра идут через файлы в connectors/, которые подключают connectors/index.php. Этот bootstrap:
- Создаёт экземпляр MODX и инициализирует контекст (по умолчанию
mgr, либоctxиз запроса). - Проверяет политику
load, если действие не помечено как анонимное (напримерsecurity/login). - Санитизирует запрос и направляет
actionв процессор ядра.
Типичный запрос: ExtJS-сетка шлёт POST на URL коннектора с action=resource/getlist (плюс заголовки авторизации, которые добавляет MODExt).
Коннекторы дополнений¶
Коннектор ядра знает только пути процессоров ядра. Дополнения кладут свой файл, обычно:
assets/components/myextra/connector.php
Шаблон (как в Developing an Extra, Part II):
<?php
require_once dirname(__DIR__, 3) . '/config.core.php';
require_once MODX_CORE_PATH . 'config/' . MODX_CONFIG_KEY . '.inc.php';
require_once MODX_CONNECTORS_PATH . 'index.php';
$corePath = $modx->getOption(
'myextra.core_path',
null,
$modx->getOption('core_path') . 'components/myextra/'
);
// при необходимости загрузите сервис и лексикон …
$modx->request->handleRequest([
'processors_path' => $corePath . 'processors/',
'location' => '',
]);
processors_path указывает, где лежат {action}.class.php. Параметр baseParams.action сетки (например mgr/item/getlist) соответствует processors/mgr/item/getlist.class.php.
Авторизация и CSRF¶
Коннекторы ждут сессию менеджера (если вы сами не открыли анонимное действие) и токен сайта. MODExt передаёт его заголовком modAuth (или HTTP_MODAUTH в запросе). Значение: $modx->siteId. Не публикуйте его в репозитории и клиентской документации.
Открыть URL коннектора в браузере без сессии и без action обычно даёт JSON вроде success: false / access denied. Так и задумано.
См. также¶
- Процессоры
- Список процессоров ядра
- Пользовательские страницы менеджера
- MODExt FormPanel: отправка через URL коннектора
Support the team building MODX with a monthly donation.
The budget raised through OpenCollective is transparent, including payouts, and any contributor can apply to be paid for their work on MODX.
Backers
Budget
$194 per month—let's make that $500!
Learn more










