Работаем с сервисом подсказок на формах: dadata.ru

20.12.14

Интеграция - WEB-интеграция

Рассмотрим: как можно использовать REST-сервис данного сайта для формирования списка выбора.

Публикация устарела в связи с изменениями API на сайте dadata.ru

 

Сервис dadata.ru позволяет получать подсказки по ФИО и по Адресам. У него есть довольно неплохо описанный API. Мы Рассмотрим, как с помощью него можно вывести подсказку в ФИО. 

Данными с сайтом можно обмениваться в двух форматах: 

  1. XML
  2. JSON

Я решил делать в xml, как в более используемом в 1С. Итак, для начала создадим новую пустую конфигурацию, со справочником Физлица, и так же создадим XDTO схему:

Создадим форму элемента справочника Физлица.

Основной функцией у нас будет: ПолучитьОбъектXDTO, в которую мы будем передавать набираемый текст (Обратите внимание, что вы должны передавать в параметрах ваш код авторизации, который вы можете получить свободно на сайте).

&НаКлиенте
Функция ПолучитьОбъектXDTO(Текст, КоличествоПодсказок = 10)
    
    HTTPЗапрос = Новый HTTPЗапрос();
    HTTPЗапрос.АдресРесурса = "/api/v2/suggest/fio";
    
    HTTPЗапрос.Заголовки.Вставить("Content-Type", "application/xml");
    HTTPЗапрос.Заголовки.Вставить("Accept", "application/xml");
    HTTPЗапрос.Заголовки.Вставить("Authorization", "ВАШ КОД АВТОРИЗАЦИИ");
    HTTPЗапрос.УстановитьТелоИзСтроки("" + Текст + "" +  КоличествоПодсказок + "");
    
    Соединение = Новый HTTPСоединение("dadata.ru",,,,Новый ИнтернетПрокси,, Новый ЗащищенноеСоединениеOpenSSL);
    
    ОтветHTTP = Соединение.ОтправитьДляОбработки(HTTPЗапрос);
    
    Тело = ОтветHTTP.ПолучитьТелоКакСтроку();	
    Если Тело = "" Тогда
        Возврат Ложь;
    Иначе
        структурныйТип = ФабрикаXDTO.Тип("http://www.sample-package.org", "SuggestFioResponse"); 
        
        МойXML = Новый ЧтениеXML;
        МойXML.УстановитьСтроку(Тело);
        ОбъектXDTO = ФабрикаXDTO.ПрочитатьXML(МойXML, структурныйТип);
        
        Возврат ОбъектXDTO;
    КонецЕсли;
    
КонецФункции

Затем назначим элементу "Наименование" событие: "Автоподбор".

&НаКлиенте
Процедура НаименованиеАвтоПодбор(Элемент, Текст, ДанныеВыбора, Параметры, Ожидание, СтандартнаяОбработка)

    Если СтрДлина(Текст) > 3 Тогда

        Элемент.СписокВыбора.Очистить();	
        
        ОбъектXDTO  = ПолучитьОбъектXDTO(Текст);
        
        Если ТипЗнч(ОбъектXDTO) = Тип("ОбъектXDTO") Тогда
            Если ТипЗнч(ОбъектXDTO.suggestions) = Тип("СписокXDTO") Тогда
                Для каждого Ключ Из ОбъектXDTO.suggestions Цикл
                    Элемент.СписокВыбора.Добавить(Ключ.value);	
                КонецЦикла;
            ИначеЕсли ТипЗнч(ОбъектXDTO.suggestions) = Тип("ОбъектXDTO") Тогда
                Элемент.СписокВыбора.Добавить(ОбъектXDTO.suggestions.value);	 
            КонецЕсли;
        КонецЕсли;
    КонецЕсли;
    
КонецПроцедуры

Можно пойти и дальше. Создадим у справочника реквизиты: Фамилия, Имя, Отчество и Пол (тип: Перечисления). И заполним их при окончании редактирования:

&НаКлиенте
Процедура НаименованиеПриИзменении(Элемент)
    
    Если ЗначениеЗаполнено(Объект.Наименование) Тогда
        ОбъектXDTO = ПолучитьОбъектXDTO(Объект.Наименование, 1);
        Если ТипЗнч(ОбъектXDTO) = Тип("ОбъектXDTO") Тогда
            ПолученныеДанные = ОбъектXDTO.suggestions;	 	
            Объект.Фамилия = ?(ТипЗнч(ПолученныеДанные.data.surname)=Тип("Строка"), ПолученныеДанные.data.surname, "");
            Объект.Имя = ?(ТипЗнч(ПолученныеДанные.data.name)=Тип("Строка"), ПолученныеДанные.data.name, "");
            Объект.Отчество = ?(ТипЗнч(ПолученныеДанные.data.patronymic)=Тип("Строка"), ПолученныеДанные.data.patronymic, "");
            
            Если ПолученныеДанные.data.gender = "MALE" Тогда
                Объект.Пол = ПредопределенноеЗначение("Перечисление.ПолФизическогоЛица.Мужской");	
            ИначеЕсли ПолученныеДанные.data.gender = "FEMALE" Тогда
                объект.Пол = ПредопределенноеЗначение("Перечисление.ПолФизическогоЛица.Женский");	
            КонецЕсли;
        КонецЕсли;
    КонецЕсли;
    
КонецПроцедуры

 Как результат получаем весьма удобный список подбора и разложение на составляющие ФИО.

 

оригинал

См. также

Сайты и интернет-магазины WEB-интеграция Системный администратор Программист Пользователь Платформа 1С v8.3 Конфигурации 1cv8 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM разных брендов в одной информационной базе в ручном и автоматическом режиме.

36000 руб.

03.08.2020    17886    19    22    

17

Сайты и интернет-магазины Интеграция WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Управленческий учет Платные (руб)

Интеграция 1С и Битрикс 24. Разработка имеет двухстороннюю синхронизацию 1С и Bitrix24 задачами. Решение позволяет создавать пользователя в 1С из Битрикс24 и наоборот. Данная разработка технически подходит под все основные конфигурации линейки продуктов 1С:Предприятие 8.3 (платформа начиная с 8.3.23). При приобретении предоставляется 1 месяц бесплатных обновлений разработки. Доступна демо-версия продукта с подключением Вашего Битрикс24

7200 руб.

04.05.2021    20017    13    17    

17

WEB-интеграция 8.3.8 Конфигурации 1cv8 Автомобили, автосервисы Беларусь Украина Россия Казахстан Управленческий учет Платные (руб)

Расширение предназначено для конфигурации "1С:Предприятие 8. Управление Автотранспортом. ПРОФ". Функционал модуля: 1. Заполнение регистров сведений по подсистеме "Мониторинг", а именно: события по мониторингу, координаты по мониторингу, пробег и расход по мониторингу, текущее местоположение ТС по мониторингу 2. Заполнение путевого листа: пробег по мониторингу, время выезда/заезда, табличная часть ГСМ, места стоянок по геозонам. 3. Отчеты по данным загруженным в регистры сведений. 4. Предусмотрена автоматическая загрузка данных в фоновом режиме (условия работы данной загрузке читайте в описании товара) Модуль работает без включенной константы по настройкам мониторинга. Модуль формы предоставляется с открытым кодом, общий модуль защищен. Любой заинтересованный пользователь, имеет возможность скачать демо-версию расширения.

22656 руб.

25.05.2021    14492    42    8    

18

WEB-интеграция Программист Руководитель проекта Платформа 1С v8.3 Конфигурации 1cv8 1С:Франчайзи, автоматизация бизнеса Платные (руб)

Расширение значительно упрощает написание API на 1С. Веб программисты получают простой и понятный доступ к 1С. Описание API создаётся автоматически и представляется в виде удобном как для человека, так и для программной обработки.

24000 руб.

27.09.2024    1519    1    0    

3
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. xzorkiix 35 23.06.14 17:23 Сейчас в теме
&НаСервере
Процедура УстановитьПол(gender)
	
	Если gender = "MALE" Тогда
		Объект.Пол = Перечисления.ПолФизическогоЛица.Мужской;	
	ИначеЕсли gender = "FEMALE" Тогда
		объект.Пол = Перечисления.ПолФизическогоЛица.Женский;	
	КонецЕсли;
	
КонецПроцедуры
Показать


Здесь достаточно на стороне клиента использовать ПредопределенноеЗначение("Перечисление.ПолФизическогоЛица.Женский");
2. xzorkiix 35 23.06.14 17:29 Сейчас в теме
ЧтениеXML = Новый ЧтениеXML;
ЧтениеXML.УстановитьСтроку(СтрокаXML);
ОбъектXDTO = ФабрикаXDTO.ПрочитатьXML(ЧтениеXML);


wsСсылка, как таковая и не нужна для разбора ответа сервиса.
3. qwinter 683 23.06.14 17:54 Сейчас в теме
(2) xzorkiix, получается двойная работа, сначала создай wsСсылку и ее свойства, а затем еще надо присвоить им значения. Кода столько же как при HTTPЗапросе, плюс созданный объект в конфигурации. Вот в упор не вижу преимуществ при их использовании.
4. xzorkiix 35 24.06.14 09:28 Сейчас в теме
(3) я хотел указать xdto пакет не нужен (оговорился). По крайней мере в рамках описанной задачи. wsСсылка о другом об обмене через протокол SOAP. В вашем случае при разборе ответа нет необходимости расписывать модель сервиса. Достаточно перед обращением к свойствам сервиса проверять их наличие.

Это если для разбора XML строки вы используете объекты XDTO

Функция Свойство(ОбъектXDTO, ИмяСвойства, Значение = Неопределено)
   Результат = Не (ОбъектXDTO.Свойства().Получить(ИмяСвойства) = Неопределено);
   Если Результат Тогда
      Значение = ОбъектXDTO[ИмяСвойства];
   КонецЕсли;
   Возварт Результат;
КонецФункции 

// . . .

Предложения = Неопределено;
Если Свойство(ОбъектXDTO, "suggestions", Предложения) Тогда
   // . . .
КонецЕсли;
Показать
theshadowco; qwinter; +2 Ответить
5. qwinter 683 24.06.14 09:35 Сейчас в теме
(4) xzorkiix, коментарии как обычно полезнее статьи)))
6. bonv 1563 25.06.14 20:32 Сейчас в теме
1.
&НаКлиенте
Функция ПолучитьОбъектXDTO(Текст, КоличествоПодсказок = 10)


Не делайте это на клиенте, в веб-клиенте работать не будет, в нем нет объекта XDTO. Лучше делать внеконтекстный вызов сервера.

2.
Тело = ОтветHTTP.ПолучитьТелоКакСтроку();	
Если Тело = "" Тогда


Это не совсем корректная проверка, если сервер вернет ошибку, то в теле будет ее описание.
Надо использовать проверку на код состояния

Если ОтветHTTP.КодСостояния = 200 Тогда


3.
структурныйТип = ФабрикаXDTO.Тип("http://www.sample-package.org", "SuggestFioResponse"); 
		
МойXML = Новый ЧтениеXML;
МойXML.УстановитьСтроку(Тело);
ОбъектXDTO = ФабрикаXDTO.ПрочитатьXML(МойXML, структурныйТип);
		
Возврат ОбъектXDTO;


Собственно определять в метаданных и затем использовать объект XDTO это лишнее.
Используете анонимный объект XDTO.

ЧтениеXML = Новый ЧтениеXML;
ЧтениеXML.УстановитьСтроку(Тело);
ЧтениеXML.ПерейтиКСодержимому();
ОбъектXDTO = Фабрика.ПрочитатьXML(ЧтениеXML);
ЧтениеXML.Закрыть();

Возврат ОбъектXDTO;


4.
&НаКлиенте
Процедура НаименованиеАвтоПодбор(Элемент, Текст, ДанныеВыбора, Параметры, Ожидание, СтандартнаяОбработка)


В этом методе лучше подключать обработчик ожидания, скажем на 0.5 сек и уже в нем заполнять список.
И опять же лучше отказаться от клиентского кода в пользу вызова внеконтекстного серверного вызова, из которого уже возвращать список.
BigB; babys; awk; worker1c; +4 Ответить
7. qwinter 683 25.06.14 20:56 Сейчас в теме
8. chmv 30.06.14 16:28 Сейчас в теме
Любопытно, но не более
9. Патриот 459 01.07.14 12:26 Сейчас в теме
Более чем любопытно, плюсую, хороший пример демонстрации возможностей работы с интернет сервисом.Комментаторам тоже спасибо за дополнения, сейчас попробую реализовать.
10. lyalius 09.07.14 15:51 Сейчас в теме
Отличная статья, только пример нерабочий.

Проблема вот в этих двух строках:

HTTPЗапрос.Заголовки.Вставить("Authorization", "ВАШ КОД АВТОРИЗАЦИИ");
HTTPЗапрос.УстановитьТелоИзСтроки("" + Текст + "" + КоличествоПодсказок + "");

Правильно так:

HTTPЗапрос.Заголовки.Вставить("Authorization", "Token ВАШ КОД АВТОРИЗАЦИИ");
HTTPЗапрос.УстановитьТелоИзСтроки("<req><query>" + Текст + "</query><count>" + КоличествоПодсказок + "</count></req>");

Еще момент: если по введенной пользователем строке ничего не будет найдено, то код сломается на строчке
> Если ТипЗнч(ОбъектXDTO.suggestions) = Тип("СписокXDTO") Тогда
потому что свойство suggestions в ответе отсутствует.
timurkhann; olegmedvedev; ::Green::; +3 Ответить
11. Патриот 459 10.07.14 18:46 Сейчас в теме
(10) lyalius, спасибо, так работает
12. mnemchinov 109 12.07.14 18:06 Сейчас в теме
У меня заработало только так:
HTTPЗапрос.УстановитьТелоИзСтроки("<req><query>" + Текст + "" + КоличествоПодсказок + "</query></req>");


И еще вместо:
Если ТипЗнч(ОбъектXDTO) = Тип("ОбъектXDTO") Тогда
		Если ТипЗнч(ОбъектXDTO.suggestions) = Тип("СписокXDTO") Тогда


сделал:
Если ТипЗнч(ОбъектXDTO) = Тип("ОбъектXDTO") Тогда
		Если ОбъектXDTO.Свойства().Получить("suggestions") <> Неопределено Тогда
			Если ТипЗнч(ОбъектXDTO.suggestions) = Тип("СписокXDTO") Тогда


и тогда окончательно заработало
olegovich; +1 Ответить
13. oslokot 194 09.09.14 16:46 Сейчас в теме
Всем привет! у этого сервиса, как я понимаю, сменилась версия api и теперь прежняя не работает.
Пытаюсь сделать как в примере, но сервер возвращает ошибку 400.
Текст ошибки: {"detail": "JSON parse error - No JSON object could be decoded"}
Странно, вроде все как надо сделал.

HTTPЗапрос = Новый HTTPЗапрос();
	HTTPЗапрос.АдресРесурса = "/api/v2/clean";
	HTTPЗапрос.Заголовки.Вставить("Content-Type", "application/json");
	HTTPЗапрос.Заголовки.Вставить("charset", "UTF-8");
	HTTPЗапрос.Заголовки.Вставить("Authorization", "Token API-ключ"); 
	HTTPЗапрос.Заголовки.Вставить("X-Secret", "Секретный ключ"); 
	Стр = "{ ""structure"": [ ""ADDRESS"" ], ""data"": [ [ ""Москва, Милютинский 13"" ] ] }";
	HTTPЗапрос.УстановитьТелоИзСтроки(Стр,КодировкаТекста.UTF8); 	
	Соединение = Новый HTTPСоединение("dadata.ru",,,,Новый ИнтернетПрокси,, Новый ЗащищенноеСоединениеOpenSSL);
	ОтветHTTP = Соединение.ОтправитьДляОбработки(HTTPЗапрос);
	
	Сообщить(ОтветHTTP.КодСостояния);
	Тело = ОтветHTTP.ПолучитьТелоКакСтроку();	
	Сообщить(Тело);
Показать

Может кто уже делал, подскажите пожалуйста где я наколбасил
14. oslokot 194 09.09.14 17:44 Сейчас в теме
(13) Сам себе и отвечу) Разобрался. Нужно перезаписать файл в кодировке UTF-8 без BOM и отправить серверу.
В общем неплохой сервис dadata.ru, жаль платный.
15. anton.fly7 174 10.09.14 08:44 Сейчас в теме
(14) покажите как вы устанавливаете тело НТТРЗапроса?
я делаю из строки, возвращает такую же ошибку
	ТекстЗапроса = "[ ""NAME"", ""PHONE"" ], ""data"": [ [ """ + Парам.Наименование + """, """ + Парам.Телефон + """ ] ]";
	
	ТекстЗапроса = "{ ""structure"": " + ТекстЗапроса + " }";
	
	HTTPЗапрос = Новый HTTPЗапрос();
	HTTPЗапрос.АдресРесурса = "/api/v2/clean";
	
	HTTPЗапрос.Заголовки.Вставить("Content-Type", "application/json");
	HTTPЗапрос.Заголовки.Вставить("Authorization", "Token " + Token); 
	HTTPЗапрос.Заголовки.Вставить("X-Secret", Secret);
	HTTPЗапрос.Заголовки.Вставить("charset", "UTF-8");
	HTTPЗапрос.УстановитьТелоИзСтроки(ТекстЗапроса);
Показать
16. anton.fly7 174 10.09.14 09:01 Сейчас в теме
(15) сам себе отвечу )

	ИмяВременногоФайла = ПолучитьИмяВременногоФайла();
	ЗТ = Новый ЗаписьТекста(ИмяВременногоФайла, КодировкаТекста.ANSI);
	ЗТ.Закрыть();
	ЗТ = Новый ЗаписьТекста(ИмяВременногоФайла,,, Истина, Символы.ПС);
	ЗТ.Записать(ТекстЗапроса);
	ЗТ.Закрыть();	
	
	HTTPЗапрос = Новый HTTPЗапрос();
	HTTPЗапрос.АдресРесурса = "/api/v2/clean";
	
	HTTPЗапрос.Заголовки.Вставить("Content-Type", "application/json");
	HTTPЗапрос.Заголовки.Вставить("Authorization", "Token " + Token); 
	HTTPЗапрос.Заголовки.Вставить("X-Secret", Secret);
	HTTPЗапрос.Заголовки.Вставить("charset", "UTF-8");
	//HTTPЗапрос.УстановитьТелоИзСтроки(ТекстЗапроса, КодировкаТекста.UTF8); 
	HTTPЗапрос.УстановитьТелоИзДвоичныхДанных(Новый ДвоичныеДанные(ИмяВременногоФайла));
Показать
progersan; +1 Ответить
19. lyalius 17.09.14 17:06 Сейчас в теме
(14) oslokot, спасибо :) Посмотрите, у нас теперь и подсказки по ЕГРЮЛ есть.
21. oslokot 194 23.09.14 14:40 Сейчас в теме
(19) lyalius, Да-да, видел.
Может как-нибудь воспользуюсь
Пока что использую свою обработку по данным контур.фокус

Ну а так, конечно молодцы, хорошая работа!
Желаю вам успешного развития проекта!
23. lyalius 23.09.14 17:46 Сейчас в теме
(21) oslokot, спасибо, очень приятно слышать такие пожелания :)
17. Zixxx 10.09.14 18:36 Сейчас в теме
А что там по поводу SOAP?

По адресу: http://confluence.hflabs.ru/pages/viewpage.action?... существуют подсказки для протокола SOAP. Пробовал обратиться к wsdl по адресу: http://dadata.ru/suggestions/api/4_1/ws?wsdl, но в ответ получаю ошибку:

Error loading [http://dadata.ru/suggestions/api/4_1/ws?wsdl]: org.apache.xmlbeans.XmlException: org.apache.xmlbeans.XmlException: error: does not close tag

Я так понимаю что это неправильный адрес, но какой тогда правильный?
18. lyalius 17.09.14 17:05 Сейчас в теме
(17) Zixxx, правильный вот этот https://dadata.ru/api/suggest. Та страница, на которую вы сослались — это чтобы вызвать подсказки, которые у вас внутри на сервере установлены.
20. Zixxx 18.09.14 19:09 Сейчас в теме
(18) lyalius, И где там по ссылке wsdl?
22. lyalius 23.09.14 17:45 Сейчас в теме
(20) Zixxx, wsdl доступна тем, кто поставил сервис у себя в корпоративной сети. Вы не ставили и вам она не доступна. Вам нужно пользоваться вот этим сервисом: https://dadata.ru/api/suggest.
24. olegmedvedev 65 13.02.17 15:56 Сейчас в теме
HTTPЗапрос = Новый HTTPЗапрос();
HTTPЗапрос.АдресРесурса = "/api/v2/suggest/address";
	
HTTPЗапрос.Заголовки.Вставить("Content-Type", "application/xml");
HTTPЗапрос.Заголовки.Вставить("Accept", "application/xml");
HTTPЗапрос.Заголовки.Вставить("Authorization", "Token "+Token); 
HTTPЗапрос.УстановитьТелоИзСтроки("<req><query>" + Текст + "</query></req>"); 
	
Соединение = Новый HTTPСоединение("dadata.ru",,,,,, Новый ЗащищенноеСоединениеOpenSSL);
	
ОтветHTTP = Соединение.ОтправитьДляОбработки(HTTPЗапрос);
Показать

вот такой код работает сейчас
25. olegmedvedev 65 21.02.17 09:31 Сейчас в теме
	
	HTTPЗапрос = Новый HTTPЗапрос();
	HTTPЗапрос.АдресРесурса = "/api/4_1/rs/suggest/address";
	
	HTTPЗапрос.Заголовки.Вставить("Content-Type", "application/xml");
	HTTPЗапрос.Заголовки.Вставить("Accept", "application/xml");
	HTTPЗапрос.Заголовки.Вставить("Authorization", "Token "+Token); 
	HTTPЗапрос.УстановитьТелоИзСтроки("<req><query>" + Текст + "</query></req>"); 
	
	Соединение = Новый HTTPСоединение("suggestions.dadata.ru/suggestions",,,,,, Новый ЗащищенноеСоединениеOpenSSL);
	
	ОтветHTTP = Соединение.ОтправитьДляОбработки(HTTPЗапрос);
Показать

изменился API dadata
26. vaad80 24.05.17 21:50 Сейчас в теме
народ, подскажите плз, делаю запрос по последней инструкции, апи текущий, как в инструкции, а в ответ приходит код ответа 200 и соответствие
"Content-Type":"application/xml; charset=UTF-8"
"Connection":"keep-alive"
"X-Powered-By":"Undertow/1"
"Vary":"Accept-Encoding"
"Server":"nginx/1.13.0"
"Date":"Wed, 24 May 2017 17:46:12 GMT"
"Transfer-Encoding":"chunked"

Поля suggestions нет(( в чем может быть ошибка?, вызываю &насервере

код
27. olegmedvedev 65 25.05.17 09:08 Сейчас в теме
(26) Ответ кода 200 - "Запрос успешно обработан", все верно делаете). Сейчас гляну и может подскажу подробнее.
28. vaad80 25.05.17 13:06 Сейчас в теме
(27)
Приветствую, со структурой разобрался, не выходило потому что результат не вогнал в тело. Сейчас приходит тегированная структура,<suggest><\suggest>
Всё ок, но это не устраивает, хотелось бы чтобы приходило в json,так как он легче и быстрее парсится 1ской.
Затык происходит у меня при json на выставке параметра запроса, текста который ищу. Строкой не проходит, возможно надо туда объект json-a впихнуть...
Может есть рабочий код с json?
29. tonimontana05 19.04.18 12:50 Сейчас в теме
(28)
HTTPЗапрос = Новый HTTPЗапрос();
HTTPЗапрос.АдресРесурса = "/api/4_1/rs/suggest/address";
HTTPЗапрос.Заголовки.Вставить("Content-Type", "application/json");
HTTPЗапрос.Заголовки.Вставить("Accept", "application/json");
HTTPЗапрос.Заголовки.Вставить("Authorization", "Token " + "Свой токен");
HTTPЗапрос.УстановитьТелоИзСтроки("{"+"""query""" + ":" + """" + Текст + """" + "," +"""count""" + ":" + "" + КоличествоПодсказок + "" + "}",
КодировкаТекста.UTF8,
ИспользованиеByteOrderMark.НеИспользовать);

Соединение = Новый HTTPСоединение("suggestions.dadata.ru/suggestions",,,,Новый ИнтернетПрокси,, Новый
ЗащищенноеСоединениеOpenSSL);

Ответ = Соединение.ОтправитьДляОбработки(HTTPЗапрос);
ОтветСервера = Ответ.ПолучитьТелоКакСтроку(КодировкаТекста.UTF8);

Чтение = Новый ЧтениеJSON;
Чтение.УстановитьСтроку(ОтветСервера);
Данные = ПрочитатьJSON(Чтение);
Чтение.Закрыть();
30. JetBrain 76 19.06.19 09:21 Сейчас в теме
Сервис выдает абсолютно не актуальную информацию, ИП три раза уже закрылось и открылось , а карточка старая из ФНС загрузилась, проверили пол базы из них 50-60 % только актуально у тех кто ни чего не менял в регистрации.
Оставьте свое сообщение