CallSabyApi2 — различия между версиями

Материал из razgovorov.ru
Перейти к: навигация, поиск
 
(не показана 1 промежуточная версия этого же участника)
Строка 50: Строка 50:
 
   },  
 
   },  
 
   "Stat": ...
 
   "Stat": ...
 +
}
 +
</source>
 +
 +
====Ответ с ошибкой====
 +
<source lang="json">
 +
{
 +
  'code': 100,
 +
  'detail': "Не найден документ с идентификатором 'f2a7c885-269a-44e4-8781-cb928df94163'",
 +
  'dump': {},
 +
  'message': "Не найден документ с идентификатором 'f2a7c885-269a-44e4-8781-cb928df94163'",
 +
  'method_name': 'ExtSdk2.CallSabyApi2',
 +
  'stack': [
 +
              {
 +
                'error': " : error -1 Не найден документ с идентификатором 'f2a7c885-269a-44e4-8781-cb928df94163'",
 +
                'method_name': 'SbisCallSabyApi'
 +
              },
 +
              {
 +
                'method_name': 'ExtSdk2.CallSabyApi2'
 +
              }
 +
          ]
 
}
 
}
 
</source>
 
</source>
  
 
[[Категория:Методы ExtSdk2]]
 
[[Категория:Методы ExtSdk2]]

Текущая версия на 16:34, 29 ноября 2024

Описание

Прокси метод, позволяющий вызывать методы API ЭДО через ExtSdk2. Например, в статье API СБИС.ПрочитатьДокумент указан успешный вызов метода

{
   "jsonrpc": "2.0",
   "method": "СБИС.ПрочитатьДокумент",
   "params": {
      "Документ": {
         "Идентификатор": "f2a7c885-269a-44e4-8781-cb928df94163",
         "ДопПоля": "ДополнительныеПоля"
      }
   },
   "id": 0
}

В поле params переданные параметры имеют определенное название. В нашем случае параметр с именем "Документ". Для CallSabyApi2 нет необходимости указывать имя параметра, достаточно передать его значение, но необходимо соблюдать порядок передаваемых параметров. Подробнее в примере ниже.

Параметры

  • Method (строка) - название метода для вызова
  • Params (массив объектов) - массив объектов с параметрами для вызова метода

Результат

Исключения

Пример успешного вызова

Запрос

   "Method": "СБИС.ПрочитатьДокумент",
   "Params": 
   [
      {
         "Идентификатор": "f2a7c885-269a-44e4-8781-cb928df94163",
         "ДопПоля": "ДополнительныеПоля"
      }
   ]

Ответ

{
  "Result": {
       "Автор": {
         "Идентификатор": "",
         "Имя": "Иван",
         "Отчество": "Иванович",
         "Фамилия": "Иванов"
      },
      "Вложение": [],
      ...
  }, 
  "Stat": ...
}

Ответ с ошибкой

{
  'code': 100,
  'detail': "Не найден документ с идентификатором 'f2a7c885-269a-44e4-8781-cb928df94163'",
  'dump': {},
  'message': "Не найден документ с идентификатором 'f2a7c885-269a-44e4-8781-cb928df94163'",
  'method_name': 'ExtSdk2.CallSabyApi2',
  'stack': [
              {
                'error': " : error -1 Не найден документ с идентификатором 'f2a7c885-269a-44e4-8781-cb928df94163'",
                'method_name': 'SbisCallSabyApi'
              },
              {
                'method_name': 'ExtSdk2.CallSabyApi2'
              }
           ]
}