Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

работа с HTTP. Зависания на WinHttp.WinHttpRequest

работа с HTTP. Зависания на WinHttp.WinHttpRequest
Я
   alexshape
 
11.11.20 - 10:06
Привет всем.

Создаю объект: Новый COMОбъект("WinHttp.WinHttpRequest.5.1")

и порой возникает такая ситуация, что при работает с этим COMОбъектом, происходят лаги. Методы (по типу: "SetTimeouts", )выполняются долго, хотя что таам такого, ничего пока еще по сети не передается. И это не всегда.

Сервер 1с, весрии 8.3.14.1630
   ДенисЧ
 
1 - 11.11.20 - 10:33
А зачем ты им пользуешься? Чем штатные методы не устраивают?
   alexshape
 
2 - 11.11.20 - 11:04
(1)
1. Писал не я, работаю с тем что есть
2. попробовал переписать на штатные механизмы, но возвращается ошибка 502

        Соединение = новый HTTPСоединение(СтрЗаменить(АдресРесурса, "http://";, ""),,ПараметрыСервиса.Пользователь,ПараметрыСервиса.Пароль,,10000);

        ФайлЗапроса = ПолучитьИмяВременногоФайла();
        ТекстовыйФайл = Новый ТекстовыйДокумент;
        ТекстовыйФайл.УстановитьТекст(ДанныеЗапроса);
        ТекстовыйФайл.Записать(ФайлЗапроса, КодировкаТекста.UTF8);
        
        ФайлРезультата = ПолучитьИмяВременногоФайла(".txt");
        

        ЗаголовокHTTP = новый Соответствие();
        ЗаголовокHTTP.Вставить("Content-Type", "text/xml; charset=utf-8");
        ЗаголовокHTTP.Вставить("Accept-Charset",  "utf-8");
        ЗаголовокHTTP.Вставить("Accept-Language", "ru");
        
        ЗаголовокHTTP.Вставить("Content-Language", "ru");
        ЗаголовокHTTP.Вставить("Content-Charset", "utf-8");
        
        Запрос = новый HTTPЗапрос("/", ЗаголовокHTTP);
        Запрос.УстановитьТелоИзДвоичныхДанных(Новый ДвоичныеДанные(ФайлЗапроса));
        
        Соединение.ОтправитьДляОбработки(Запрос, ФайлРезультата);
            
        Ответ = Новый ТекстовыйДокумент();
        Ответ.Прочитать(ФайлРезультата, КодировкаТекста.UTF8);
        ТекстОтвета = Ответ.ПолучитьТекст();
        УдалитьФайлы(ФайлЗапроса);
        УдалитьФайлы(ФайлРезультата);
   alexshape
 
3 - 11.11.20 - 11:07
(2) Хотя через COm все работает
   alexshape
 
4 - 11.11.20 - 11:08
вот ком:

Таймаут = 1000;
    WinHttp = Новый COMОбъект("WinHttp.WinHttpRequest.5.1");    
    WinHttp.SetTimeouts(Таймаут, Таймаут, Таймаут, Таймаут); 

        WinHttp.Option(2, "utf-8");    
        WinHttp.Open("POST", АдресРесурса);    
        WinHttp.setRequestHeader("Content-Type", "text/xml; charset=utf-8");    
        ЗаполнитьПараметрыАутентификации(WinHttp, ПараметрыСервиса);
        WinHttp.Send(ДанныеЗапроса);
   Kigo_Kigo
 
5 - 11.11.20 - 11:16
(4) А если убрать вообще
WinHttp.SetTimeouts(Таймаут, Таймаут, Таймаут, Таймаут); 
?
   Kigo_Kigo
 
6 - 11.11.20 - 11:17
И да, инет соединение стабильно?
   arsik
 
7 - 11.11.20 - 11:24
(2) Вот тут наверно ошибка
Запрос = новый HTTPЗапрос("/", ЗаголовокHTTP);

Если я делаю запрос на http://api.qwerty.ru/zapp/
Соединение = новый HTTPСоединение("api.qwerty.ru",,ПараметрыСервиса.Пользователь,ПараметрыСервиса.Пароль,,10000);
Запрос = новый HTTPЗапрос("/zapp/", ЗаголовокHTTP);

   arsik
 
8 - 11.11.20 - 11:27
+(7) А еще возможно прокси нужно указать.
   alexshape
 
9 - 11.11.20 - 11:35
(7) неа, все равно

Error Code: 502 Proxy Error. The ISA Server denied the specified Uniform Resource Locator (URL). (12202)
   arsik
 
10 - 11.11.20 - 11:38
(9) Ну так я так полагаю, что вас переадресовывают на https
   arsik
 
11 - 11.11.20 - 11:41
+(10) Вру. У вас прокси сказал - идите нахуй, такого сайта в разрешенных для вашего приложения нет.
   alexshape
 
12 - 11.11.20 - 11:46
прокси указал. и защищенное соединение, теперь: Ошибка работы с Интернет:  Failure when receiving data from the peer
   arsik
 
13 - 11.11.20 - 11:47
(12) не. Защищенное ненадо
   alexshape
 
14 - 11.11.20 - 11:53
(13) Убрал, но тогда     


Error Code: 502 Proxy Error. The ISA Server denied the specified Uniform Resource Locator (URL). (12202)
   novichok79
 
15 - 11.11.20 - 12:16
могу посоветовать чем отличается отправка из 1С и не 1С через fiddler какой-нибудь.
   novichok79
 
16 - 11.11.20 - 12:16
*посоветовать посмотреть и дальше решать что делать.
   alexshape
 
17 - 11.11.20 - 12:19
(15) Ок, спасибо. Хорошая идея

Список тем форума
Рекламное место пустует  Рекламное место пустует
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.