Взаимодействие чрез API

От ISPWiki

Съдържание

Упълномощаване с помощта на уникален номер на сесия

Този метод е най-подходящ за използване на контролния панел през браузър.

Упълномощаването става чрез достъп до следния URL адрес:

След това контролният панел ще върне или съобщение за грешка, или XML документ със следната форма:

Номерът на сесията може да бъде предаден чрез COOKIE ses5 (за CORE - "coreses5"). Ако панелът е BILLmanager, използвайте името "billmgr4" за бисквитката.

Упълномощаване с помощта на authinfo

Упълномощаване на ключ

Генерира се ключ - произволен низ, поне 16 знака

Например получихме низа1234567890qwertyuiop

Отговорът ще бъде или "ок", или грешка.

Използва се за панели от пето поколение. За панелите от четвърто поколение трябва да използвате

Възможни проблеми

Добавете параметъра checkcookie=no към заявката, това ще деактивира проверката на бисквитките.

Извикване на функции с правата на друг потребител

За достъп до която и да е функция на контролния панел с правата на друг потребител е необходимо да добавите допълнителен параметър su=user_name към URL адреса. Администраторът на сървъра може да извиква функции с правата на всички потребители, дистрибуторът - само с правата на своите потребители. За всички останали тази опция е забранена.

помощна програма mgrctl

В допълнение към извикването на функции през уеб сървър, можете да използвате вътрешната помощна програма mgrctl, която осъществява директен достъп до контролния панел (заобикаля уеб сървъра и не зависи от неговата работа по никакъв начин). Това е предпочитаният начин за локален достъп до функциите на нашия продукт чрез API.

Изходен формат на резултатите от изпълнението на функцията

Всички контролни панели предоставят възможност за получаванерезултатът от изпълнението на неговите функции в XML формат, текстов формат и JSON формат. За да посочите в какъв формат искате да получавате данните, трябва да посочите параметъра out=format_name.

Възможни стойности за изходящия параметър:

  • xml - данните ще бъдат върнати в XML формат,
  • devel - същото като XML, но документът ще съдържа данни, описващи потребителския интерфейс (полезно за отстраняване на грешки във вашите добавки),
  • текст - данни в текстов формат
  • json - данни във формат JSON. http://ru.wikipedia.org/wiki/JSON

Ако параметърът out липсва, тогава данните се считат за предназначени за браузъра и се преобразуват в html.

Извеждане на резултатите от изпълнението на функции в XML формат

За да получите данни под формата на XML, трябва да подадете допълнителния параметър out=xml към контролния панел в заявката. В този случай резултатът ще зависи от вида на функцията, която използвате. Така че в случай на получаване на списък с елементи, функцията ще върне XML документ, състоящ се от списък с XML възли, по един за всеки елемент. Всеки възел от своя страна се състои от набор от възли, които определят параметрите на този елемент.

Ако извикате функция, която трябва да извърши някакво действие, контролният панел ще върне XML документ за успеха на операцията или съобщение за грешка.

Извеждане на резултатите от изпълнението на функции в текстов формат

За да получите данни в текстов вид, е необходимо да подадете допълнителен параметър out=text към контролния панел в заявката. В този случай резултатът също ще зависи от вида на функцията, която използвате. В случай на получаване на списък от елементи, функцията ще върне списък от низове, всеки от които съответства на един елемент и се състои от набор от параметри за този елемент.

Ако извикате функция, която трябва да извърши някакво действие, контролният панел ще върне: OK или съобщение за грешка, ако операцията е била успешна.

Списък с функции и параметри

Списъкът с функции може да бъде намерен чрез извикване на помощната функция actionlist, която е налична във всички базирани на CORE панели. Освен това винаги можете да извършвате действия в интерфейса през браузъра, докато в историята на панела можете да видите как изглежда заявката, която изпълнява вашето действие.