GetFullDomainsChanged - Получить полный список доменов, если хэш дерева доменов изменился.

Общая информация

  1. Команда актуальна, начиная с версии 1.6.

  2. Система сравнивает переданный в запросе хэш со значением хэша в БД доменов. Если хэш изменился, ответ будет содержать все доступные пользователю домены. Если хэш не изменился, ответ будет пустой.

  3. Для суперюзера возвращает все домены от корня. Для всех остальных возвращает все домены от разрешенных доменов. Если домен указанный в роли не существует, он будет игнорирован без выброса ошибки.

  4. В 1.18 появился улучшенный метод GetFullDomainsPartition.

Входные параметры

Параметр Значение Формат значения Расшифровка формата Ссылка

hash

Хэш последнего изменения дерева доменов

Целое положительное число или 0, когда список доменов запрашивается первый раз

Выходные параметры

Параметр Значение Формат значения

array

Массив объектов NbiDomain2 с описанием доменов

NbiDomain2

hash

Хэш последнего изменения дерева доменов

Integer

code

Код ответа

Integer

detail

Пояснение к ответу

String

Примеры команд и кодов

Код Описание

0

Успешно

Запрос
<soapenv:Envelope>
   <soapenv:Header/>
   <soapenv:Body>
      <nbi:GetFullDomainsChanged>
         <nbi:hash>0</nbi:hash>
      </nbi:GetFullDomainsChanged>
   </soapenv:Body>
</soapenv:Envelope>
Ответ
<soapenv:Envelope>
   <soapenv:Body>
      <ns:GetFullDomainsChangedResponse>
         <ns:return>
            <ax22:code>0</ax22:code>
            <ax22:detail/>
            <ax239:array xsi:type="ax239:NbiDomain2">
               <ax239:descr>Root domain</ax239:descr>
               <ax239:domain>root</ax239:domain>
               <ax239:type>both</ax239:type>
            </ax239:array>
            <ax239:array xsi:type="ax239:NbiDomain2">
               <ax239:descr>Anna domain</ax239:descr>
               <ax239:domain>anna.root</ax239:domain>
               <ax239:type>ap</ax239:type>
            </ax239:array>
            <ax239:array xsi:type="ax239:NbiDomain2">
               <ax239:descr>BRAS domain</ax239:descr>
               <ax239:domain>bras.root</ax239:domain>
               <ax239:type>service</ax239:type>
            </ax239:array>
            <ax239:hash>8</ax239:hash>
         </ns:return>
      </ns:GetFullDomainsChangedResponse>
   </soapenv:Body>
</soapenv:Envelope>

Код Описание ошибки

2

Ошибка взаимодействия с базой данных доменов.

Пример использования

Команда добавлена на кэширования списка доменов в сторонней системе (например, в Личном кабинете - ЛК).
Каждый раз, когда системе нужно отобразить список доменов, она делает запрос в NBI и в случае, когда домены не изменились, мгновенно получает пустой ответ и использует ранее построенный список доменов, который уже хранится в памяти ЛК.
Если ответ не пустой, список доменов в памяти ЛК заменяется на новый, новое значение хэша запоминается для последующих обращений.

См. также

Вернуться к списку команд
Версия 1.21-2274
Дата публикации 03-12-2021 11:20:22