Difference between revisions of "Using Joomla Ajax Interface/ru"
From Joomla! Documentation
(Created page with "==Формат Ответа==") |
(Created page with "<code>format=[json|debug]</code> опциональный аргумент для формата результатов.") |
||
Line 74: | Line 74: | ||
==Формат Ответа== | ==Формат Ответа== | ||
− | <code>format=[json|debug]</code> | + | <code>format=[json|debug]</code> опциональный аргумент для формата результатов. |
*<code>json</code> for JSON format | *<code>json</code> for JSON format |
Revision as of 22:08, 28 May 2015
Что такое интерфейс Ajax Joomla! (com_ajax)
Компактный, расширяемый компонент, действующий в качестве точки входа для HTTP запросов для автономных модулей и плагинов, тем самым предоставляя им потенциал функциональности Ajax. Com_ajax в основном используют, в тех случаях, когда не являються разработчиками того компонента, с которым взаимодействует модуль или плагин.
ПРИМЕЧАНИЕ: Если Вы разработчик компонентов, Вам нет нужды применять com_ajax для имплементации функционала Ajax в неи. Вы можете это сделать напрямую в компоненте.
Примеры применения, включая но не ограничиваясь:
- Модуль, получающий данные средствами внешнего API.
- Модуль, взаимодействующий с компонентом, написаным не Вами.
- Плагин, реализующий схожую с API функциональность для организации потребления данных с Вашего сайта.
Анатомия запроса Ajax
Требуется
option=com_ajax
[module|plugin]=name
format=[json|debug|raw]
Опционально
method=[custom fragment]
по умолчанию становитсяget
, если опущено.
Обзор
Все запросы начинаются с ?option=com_ajax
, который вызывает это расширение, и должны содержать в себе, тип расширения для вызова , и должны возвращать формат данных.
Дополнительные переменные и значния, используемые Вашим расширением также могут быть включены в URL
Например запрос к ?option=com_ajax&module=session
может вызывать mod_session
с результатами возвращенными в формате по умолчанию, и напротив ?option=com_ajax&plugin=session&format=json
запустит onAjaxSession
группу плагинов с выводом результата в JSON.
Поддержка модулей
Обобщение
Поддержка модулей реализована вызовом метода в файле helper.php
модуля.
Детали
Module requests must include the module
variable in the URL, paired with the name of the module (i.e. module=session
for mod_session
).
Это значение также используется для:
- Имя каталога для проверки файла помошеика, например
/modules/mod_session/helper.php
- Наименование класса для вызова, например:
Optionally, the method
variable may be included to override the default method prefix of get
.
- "'Примечание"': все методы должны заканчиваться в
Ajax
. Например: method=mySuperAwesomeMethodToTrigger
вызоветmySuperAwesomeMethodToTriggerAjax
Ajax Session Module являеться примером модуля демонстрирующего такую функциональность.
Ответ плагинов
Обобщение
Поддержка плагинов достигнута путем запуска события. плагина onAjax[Name]
.
Детали
Запросы плагинов должны включать в себя переменнуюplugin
в URL в паре с событием плагина, например plugin=session
для onAjaxSession
.
Это значение также используется для:
- Имя класса плагина следом за условностью
plgAjax[Name]
- Имя функции плагина следом за условностью
onAjax[Name]
/ - Группа плагинов по умолчанию
ajax
. Вы можете сменить её указав параметр запросаgroup
. (Начиная с Joomla! 3.4)
Ajax Latest Articles plugin пример плагина, демонстрирующего такую функциональность.
Формат Ответа
format=[json|debug]
опциональный аргумент для формата результатов.
json
for JSON formatdebug
for human-readable output of the results.