CallMethodWithoutAuthXML - NativeAPI — различия между версиями

Материал из razgovorov.ru
Перейти к: навигация, поиск
 
Строка 3: Строка 3:
  
 
== Параметры ==
 
== Параметры ==
* {{Шаблон:ApiParam|query_id|1|строка|uuid для идентификации вызова метода}}
 
 
* {{Шаблон:ApiParam|guid_module|1|строка|uuid модуля полученный через GetModule()}}
 
* {{Шаблон:ApiParam|guid_module|1|строка|uuid модуля полученный через GetModule()}}
 
* {{Шаблон:ApiParam|parameters_module_method|1|строка|xml с параметрами, сериализованный в строку}}
 
* {{Шаблон:ApiParam|parameters_module_method|1|строка|xml с параметрами, сериализованный в строку}}
 
* {{Шаблон:ApiParam|host|1|строка| хост на который хотим пойти online.sbis.ru}}
 
* {{Шаблон:ApiParam|host|1|строка| хост на который хотим пойти online.sbis.ru}}
 +
* {{Шаблон:ApiParam|query_id|1|строка|uuid для идентификации вызова метода( опциональный )}}
 
== Результат ==
 
== Результат ==
 +
== Результат ==
 +
* {{Шаблон:ApiParam|query_id|1|строка|uuid по которому необходимо ждать ответ через вызов функции ReadAllXml}}
 +
 
Результат следует ожидать через вызов метода [[ReadAllXml_-_NativeAPI|ReadAllXml]]
 
Результат следует ожидать через вызов метода [[ReadAllXml_-_NativeAPI|ReadAllXml]]
 
В результате должно прийти событие Message, у которого в Result лежит идентификатор сессии - '''session_id'''
 
В результате должно прийти событие Message, у которого в Result лежит идентификатор сессии - '''session_id'''
Строка 14: Строка 17:
 
<syntaxhighlight lang="python">
 
<syntaxhighlight lang="python">
  
query_id = str(uuid.uuid4())
 
 
module_method = "ExtSdk2.AuthByPassword"
 
module_method = "ExtSdk2.AuthByPassword"
 
parameters_module_method = json.dumps({"Login": "login", "Password": "password"}, ensure_ascii=True)
 
parameters_module_method = json.dumps({"Login": "login", "Password": "password"}, ensure_ascii=True)
 
domain = online.sbis.ru
 
domain = online.sbis.ru
 +
query_id = str(uuid.uuid4()) - если необходимо использовать свой uuid
  
CallMethodWithoutAuthXML( query_id, guid_module, module_method, parameters_module_method, domain )
+
result = CallMethodWithoutAuthXML( query_id, guid_module, module_method, parameters_module_method, domain )
  
 
</syntaxhighlight>
 
</syntaxhighlight>
Строка 26: Строка 29:
 
<syntaxhighlight lang="python">
 
<syntaxhighlight lang="python">
  
<array>
+
result = "a0e7e60d-e792-4f3c-9ccf-88dc95e9d1a1"
<object>
 
<str name="type">Message</str>
 
<str name="queryID">d29cc316-aad2-4b4b-a980-fecf59e0ccdd</str>
 
<str name="data">&lt;object&gt;&lt;str name="Result"&gt;MTI4ZmU3NGMzOWM4NDYxMDgzYWQ5ZjQ1OWMzZTRmYzM&lt;/str&gt;&lt;object name="Stat"&gt;&lt;object name="ExtSdk2"&gt;&lt;object name="ExtSdk2.AuthByPassword"&gt;&lt;num name="count"&gt;1&lt;/num&gt;&lt;num name="time"&gt;0&lt;/num&gt;&lt;/object&gt;&lt;/object&gt;&lt;object name="СБИС"&gt;&lt;object name="ExtSdk2.AuthByPassword"&gt;&lt;num name="count"&gt;1&lt;/num&gt;&lt;num name="time"&gt;374&lt;/num&gt;&lt;/object&gt;&lt;/object&gt;&lt;/object&gt;&lt;/object&gt;</str>
 
</object>
 
</array>
 
  
 
</syntaxhighlight>
 
</syntaxhighlight>
Массив xml объектов сериализованный в строку
 
  
 
[[Категория:NativeAPI ExtSdk2]]
 
[[Категория:NativeAPI ExtSdk2]]

Текущая версия на 11:56, 24 марта 2023

Описание

Вызов методов модуля плагина без авторизации. Предназначен для вызовов из 1c с передачей параметров в виде xml.

Параметры

  • guid_module ! (строка) - uuid модуля полученный через GetModule()
  • parameters_module_method ! (строка) - xml с параметрами, сериализованный в строку
  • host ! (строка) - хост на который хотим пойти online.sbis.ru
  • query_id ! (строка) - uuid для идентификации вызова метода( опциональный )

Результат

Результат

  • query_id ! (строка) - uuid по которому необходимо ждать ответ через вызов функции ReadAllXml

Результат следует ожидать через вызов метода ReadAllXml В результате должно прийти событие Message, у которого в Result лежит идентификатор сессии - session_id

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

module_method = "ExtSdk2.AuthByPassword"
parameters_module_method = json.dumps({"Login": "login", "Password": "password"}, ensure_ascii=True)
domain = online.sbis.ru
query_id = str(uuid.uuid4()) - если необходимо использовать свой uuid

result = CallMethodWithoutAuthXML( query_id, guid_module, module_method, parameters_module_method, domain )

Пример ответа

result = "a0e7e60d-e792-4f3c-9ccf-88dc95e9d1a1"