0
На рассмотрении

Примеры на 1С

Resetych 7 лет назад обновлен Пользователь 161991 11 месяцев назад 6

Добрый день!

У Вас на сайте (https://dadata.ru/api/suggest/) есть примеры работы, написанные на 1С, но Вы их выложили на сайт http://infostart.ru/, а там необходима регистрация (причем регистрация там стоит денег). Чтобы не лепить свой велосипед, не могли бы Вы выложить свои примеры в другое место, более доступное для всех - как пример https://github.com/

Заранее благодарен!

Ответ

Ответ

Добрый день! Примеры написаны не нашими сотрудниками, поэтому я не имею права без разрешения авторов выложить их на гитхаб. Я запрошу у них, и если не будет возражений, то выложу.

Ответ

Добрый день! Примеры написаны не нашими сотрудниками, поэтому я не имею права без разрешения авторов выложить их на гитхаб. Я запрошу у них, и если не будет возражений, то выложу.

Добрый вечер!

Код уже написан и прекрасно работает, но все же было бы очень полезно видеть примеры в общедоступном месте не только для меня но и для всех кто хочет побыстрее с Вами интегрироваться. Очень Вам благодарен независимо от результата!

Да, вы полностью правы, примеры должны быть общедоступны. Если авторы не согласятся, попробуем сделать собственные. Спасибо, что обратили на это внимание!

Код формирования запроса для контрагентов, 8.3, для 8.2 нужно ЗаписьJSON отдельно реализовать (достаточно просто гуглится),


Функция ПолучитьДаныеОрганизацийПоСтроке(Строка) Экспорт

Токен = "";
СоответствиеДанные = Новый Соответствие;
СоответствиеДанные.Вставить("query", Строка);
МассивСтатусов = Новый Массив;
МассивСтатусов.Добавить("ACTIVE");
СоответствиеДанные.Вставить("status", МассивСтатусов);
Сервер = "suggestions.dadata.ru";
СтрокаЗапроса = "/suggestions/api/4_1/rs/suggest/party";
Возврат ПОСТ(СтрокаЗапроса, СоответствиеДанные, Сервер, Токен);

КонецФункции


//-----------------------------


Функция ПОСТ(СтрокаЗапроса, СоответствиеДанные, Сервер, Токен)

ЗаписьJSON = Новый ЗаписьJSON;
ЗаписьJSON.УстановитьСтроку();
ЗаписатьJSON(ЗаписьJSON, СоответствиеДанные);
СтрокаДанные = ЗаписьJSON.Закрыть();
ssl1 = Новый ЗащищенноеСоединениеOpenSSL(
Новый СертификатКлиентаWindows(СпособВыбораСертификатаWindows.Авто),
Новый СертификатыУдостоверяющихЦентровWindows());
HTTPСоединение = Новый HTTPСоединение(Сервер,,,,,,ssl1);
HTTPЗапрос = Новый HTTPЗапрос(СтрокаЗапроса);
HTTPЗапрос.Заголовки.Вставить("Content-Type", "application/json");
HTTPЗапрос.Заголовки.Вставить("Accept", "application/json");
HTTPЗапрос.Заголовки.Вставить("Authorization", "Token " + Токен);
HTTPЗапрос.УстановитьТелоИзСтроки(СтрокаДанные, "UTF-8", ИспользованиеByteOrderMark.НеИспользовать);
Попытка
Результат = HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос);
Исключение
// исключение здесь говорит о том, что запрос не дошел до HTTP-Сервера
Сообщить("Произошла сетевая ошибка!");
Возврат Ложь;
КонецПопытки;
Возврат Результат;
КонецФункции

//-----------------------

Для получения структуры с данными используем следующий код

ЧтениеJSON = Новый ЧтениеJSON;

ЧтениеJSON.УстановитьСтроку(Результат.ПолучитьТелоКакСтроку());

Ответ = ПрочитатьJSON(ЧтениеJSON);

Возврат Ответ;

Сервис поддержки клиентов работает на платформе UserEcho