Using Joomla Ajax Interface/ru: Difference between revisions

From Joomla! Documentation

No edit summary
No edit summary
Line 5: Line 5:
Компактный, расширяемый компонент, действующий в качестве точки входа для HTTP запросов для автономных модулей и плагинов, тем самым предоставляя им потенциал функциональности AJAX. Com_ajax в основном используют, в тех случаях, когда не являются разработчиками того компонента, с которым взаимодействует модуль или плагин.
Компактный, расширяемый компонент, действующий в качестве точки входа для HTTP запросов для автономных модулей и плагинов, тем самым предоставляя им потенциал функциональности AJAX. Com_ajax в основном используют, в тех случаях, когда не являются разработчиками того компонента, с которым взаимодействует модуль или плагин.


'''ПРИМЕЧАНИЕ''': Если Вы разработчик компонентов, Вам нет нужды применять com_ajax для имплементации функционала Ajax  в неи. Вы можете это сделать напрямую в компоненте.
'''ПРИМЕЧАНИЕ''': Если Вы разработчик компонентов, то нет необходимости применять в нем com_ajax для реализации  функционала AJAX. Вы можете это сделать напрямую в своем компоненте.


Примеры применения, включая но не ограничиваясь:
Примеры применения, включая но не ограничиваясь:

Revision as of 12:57, 28 July 2015

Joomla! 
≥ 3.2
серия

Что такое 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
  • Наименование класса для вызова, например:

Опционально переменная method могла быть включена для отмены преикса метода по умолчанию 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 для формата JSON
  • debug для человекочитаемого вывода результатов./ru/ru/ru