Имя: Пароль:
1C
1С v8
Работа AddIn.V7HttpReader на 1С 8
0 Danik11
 
21.10.19
16:18
Доброго времени суток, подскажите пожалуйста есть в 1С 7.7 поиск товара по определенным вводным на сейте через AddIn.V7HttpReader.

Каким образом это возможно реализовать на 1С 8 ?

Скидываю кусок кода на 1С 7.7:
            ИнтернетОбъект    = СоздатьОбъект("AddIn.V7HttpReader");
        ИнтернетОбъект.КоличествоПопытокАвторизации = 0;
        Если Константа.ИспользоватьПрокси = 1 Тогда
            ИнтернетОбъект.УстановитьПараметрыПрокси(СокрЛП(Константа.ИмяПрокси), СокрЛП(Константа.ПарольПрокси));
        КонецЕсли;
        СтрокаЗапроса = "?search=" + ОрНомПарам + ?(Внутри = 1,"&chk1=1","") + "&user=" + СокрЛП(глПользователь.ОсновнаяФирма.ПользовательWeb) + "&key=" + СокрЛП(глПользователь.ОсновнаяФирма.ПарольWeb);
        ИнтернетОбъект.Получить(СокрЛП(Константа.АдресURLКросс) + СтрокаЗапроса, ОтветСервера, 2);
        ОтветСервера = СокрЛП(ОтветСервера);
        
        Если Прав(ОтветСервера, 1) = "," Тогда
            ОтветСервера = Лев(ОтветСервера, СтрДлина(ОтветСервера) - 1);
        КонецЕсли;
        ОтветСервера = Кавычка + СтрЗаменить(ОтветСервера, ",", Кавычка + "," + Кавычка) + Кавычка;
        
        СписНом = СоздатьОбъект("СписокЗначений");
        СписНом.ИзСтрокиСРазделителями(ОтветСервера);
        
        РазмСписка = СписНом.РазмерСписка();
1 Garykom
 
гуру
21.10.19
16:27
(0) >Каким образом это возможно реализовать на 1С 8 ?

Нанять программиста за плату?
2 Kigo_Kigo
 
21.10.19
16:36
На интерпретируй, думаю разберешься


ИмяФайла = ПолучитьИмяВременногоФайла("txt_");
    
    XOriginRequestId = Строка(Новый УникальныйИдентификатор());
    XTimestamp = Строка(Формат(ТекущаяДата(), "ДФ=yyyy-MM-ddT05hh:mm:ssZ" ));
    
    URL = "/v1/partner/customer?code=" + КодСкидки;
    
    ТекстЗапросаПользователя = Новый HTTPЗапрос;
    ТекстЗапросаПользователя.Заголовки.Вставить("Accept", "application/json");
    ТекстЗапросаПользователя.Заголовки.Вставить("X-Origin-Request-Id", Строка(XOriginRequestId));
    ТекстЗапросаПользователя.Заголовки.Вставить("X-Timestamp", Строка(XTimestamp));
    ТекстЗапросаПользователя.Заголовки.Вставить("X-Api-Key", Токен);
    
    ТекстЗапросаПользователя.АдресРесурса = URL;
    
    ssl = Новый ЗащищенноеСоединениеOpenSSL();
    Con = Новый HTTPСоединение(Сервер, , , , , 10, ssl);
        
    Con.Получить(ТекстЗапросаПользователя, ИмяФайла);
    
    ТексДок = Новый ТекстовыйДокумент;
    ТексДок.Прочитать(ИмяФайла, КодировкаТекста.UTF8);
    Ответ = ТексДок.ПолучитьТекст();
    //Возврат Ответ;
    
    ЧтениеИнформацииОПользователе = Новый ЧтениеJSON;
    ЧтениеИнформацииОПользователе.УстановитьСтроку(Ответ);
    
    СтруктураОтвета = ПрочитатьJSON(ЧтениеИнформацииОПользователе, ,"dateCreated");
        
    Если СтруктураОтвета.Свойство("scores") Тогда
        НоваяСтрокаТаблицы = ТаблицаИнформацииОтСервера.Добавить();
        НоваяСтрокаТаблицы.Поле = "КоличествоИмеющихсяБаллов";
        НоваяСтрокаТаблицы.Значение = Строка(СтруктураОтвета.scores);
    КонецЕсли;
    Если СтруктураОтвета.Свойство("name") Тогда
        ИмяКлиента = "";
        ИмяКлиента = ИмяКлиента + СтруктураОтвета.name;
    КонецЕсли;
    Если СтруктураОтвета.Свойство("surname") Тогда
        НоваяСтрокаТаблицы = ТаблицаИнформацииОтСервера.Добавить();
        НоваяСтрокаТаблицы.Поле = "ИмяКлиента";
        ИмяКлиента = ИмяКлиента + ?(ИмяКлиента="",""," ") + СтруктураОтвета.surname;
        НоваяСтрокаТаблицы.Значение = ИмяКлиента;
    КонецЕсли;
    Если СтруктураОтвета.Свойство("errorCode") Тогда
        Сообщить("Получена ошибка: " + ?(СтруктураОтвета.errorCode = "notFound","неверный код скидки!",СтруктураОтвета.errorCode));
    КонецЕсли;
    Возврат ТаблицаИнформацииОтСервера
3 Danik11
 
21.10.19
16:52
Kigo_Kigo
Спасибо, попробую.
AdBlock убивает бесплатный контент. 1Сергей