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

Материал из razgovorov.ru
Перейти к: навигация, поиск
 
Строка 56: Строка 56:
 
<source lang="json">
 
<source lang="json">
 
{
 
{
   [
+
   'code': 100,
    {
+
  'detail': "Не найден документ с идентификатором 'f2a7c885-269a-44e4-8781-cb928df94163'",
      'code': 100,
+
  'dump': {},
      'detail': "Не найден документ с идентификатором 'f2a7c885-269a-44e4-8781-cb928df94163'",
+
  'message': "Не найден документ с идентификатором 'f2a7c885-269a-44e4-8781-cb928df94163'",
      'dump': {},
+
  'method_name': 'ExtSdk2.CallSabyApi2',
      'message': "Не найден документ с идентификатором 'f2a7c885-269a-44e4-8781-cb928df94163'",
+
  'stack': [
      'method_name': 'ExtSdk2.CallSabyApi2',
+
              {
      'stack': [
+
                'error': " : error -1 Не найден документ с идентификатором 'f2a7c885-269a-44e4-8781-cb928df94163'",
                  {
+
                'method_name': 'SbisCallSabyApi'
                    'error': " : error -1 Не найден документ с идентификатором 'f2a7c885-269a-44e4-8781-cb928df94163'",
+
              },
                    'method_name': 'SbisCallSabyApi'
+
              {
                  },
+
                'method_name': 'ExtSdk2.CallSabyApi2'
                  {
+
              }
                    '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'
              }
           ]
}