Версия: 6.x
burger close
Класс ApiRouter

Открытые члены

 __construct ($version, $lang)
 
 runMethod ($method, $params)
 
 makeParams ($method,\RS\Http\Request $http_request)
 

Открытые статические члены

static getMethodsVersions ($cache=true)
 
static getMethodsLanguages ($cache=true)
 
static getGroupedMethodsInfo ($lang=null, $cache=true)
 
static getMethodInstance ($method, $only_allowable=false)
 
static getApiMethodsSelectList (array $root_item=[], $only_allowable=false, $lang=null, $cache=true)
 
static getAuthorizedApiMethodsSelectList (array $root_item=[], $only_allowable=false, $lang=null, $cache=true)
 
static getApiMethods ($cache=true, $only_allowable=true)
 
static getOriginForRequest ($client_name="", $client_version="")
 

Поля данных

 $lang
 

Статические открытые данные

static $api_method_folder = '/model/externalapi'
 

Конструктор(ы)

__construct (   $version,
  $lang 
)

Методы

static getApiMethods (   $cache = true,
  $only_allowable = true 
)
static

Возвращает полный список методов API, которые существуют во всех включенных модулях текущего сайта. Классы с обработчиками методов должны находиться в папке /ИМЯ МОДУЛЯ/model/externalapi/ИМЯ ГРУППЫ/ИМЯ МЕТОДА

Аргументы
bool$cache- Если true, то будет использоваться кэширование
bool$only_allowable- Если true, то будут возвращены только разрешенные в настройках модуля методы
Возвращает
[ [ 'method' => 'oauth.token', //группа.метод 'class' => '' //Имя класса, выполняющего метод ], ... ]
static getApiMethodsSelectList ( array  $root_item = [],
  $only_allowable = false,
  $lang = null,
  $cache = true 
)
static

Возвращает список методов, имеющихся в системе для отображения в элементе select

Возвращает
[ 'id метода' => '(id метода) описание метода', 'id метода' => '(id метода) описание метода', .... ]
static getAuthorizedApiMethodsSelectList ( array  $root_item = [],
  $only_allowable = false,
  $lang = null,
  $cache = true 
)
static

Возвращает список методов, поддерживающих авторизационный токен, имеющихся в системе для отображения в элементе select

Аргументы
array$root_item
bool$only_allowable- Если true, то будут возвращены только разрешенные в настройках модуля методы
null$lang- Язык для справки
bool$cache- Если true, то будет использоваться кэширование
static getGroupedMethodsInfo (   $lang = null,
  $cache = true 
)
static

Возвращает информацию о всех методах API, присутствующих в системе

Аргументы
string$lang- двухсимвольный идентификатор
bool$cache- использовать кэширование
Возвращает
array
static getMethodInstance (   $method,
  $only_allowable = false 
)
static

Возвращает инстанс класса, который обрабатывает метод API

Аргументы
string$method- Имя метода, например oauth.authorize
bool$only_allowable- Если true, то будут возвращены инстансы только включенных в настройках модуля методов
Возвращает
static getMethodsLanguages (   $cache = true)
static

Возвращает все существующие языки, для которых есть описания API

Аргументы
bool$cache
Возвращает
array
static getMethodsVersions (   $cache = true)
static

Возвращает все возможные версии методов API, от самой нижней до верхней

Аргументы
mixed$cache
static getOriginForRequest (   $client_name = "",
  $client_version = "" 
)
static

Возвращает значение заголовка Origin для ответа на запросы

Аргументы
string$client_name- имя приложения для подключения
string$client_version- версия приложения для подключения
Возвращает
string
makeParams (   $method,
\RS\Http\Request  $http_request 
)

Возвращает POST И GET параметры, которые будут переданы в API метод

Аргументы
string$method
\RS\Http\Request$http_request
Возвращает
array
runMethod (   $method,
  $params 
)

Выполняет один метод API

Аргументы
string$method
array$http_request

Поля

$api_method_folder = '/model/externalapi'
static
$lang