Всем доброго дня!
Мне нужно получить и обработать данные с веб-сервиса, который отдаёт их как непрерывный поток: text/event-stream
Т.е. соединение устанавливается, передаются некоторые данные и сервером оно не разрывается. Данные передаются не постоянно, а при возникновении некоторых событий.
Более подробно описано тут: https://www.fmsdocumentation.com/apis/status-api/?lang=ru
Пытаюсь получить средствами 1С:
HTTPСоединение = Новый HTTPСоединение(Сервер,,,,,50,Новый ЗащищенноеСоединениеOpenSSL());
HTTPЗапрос = Новый HTTPЗапрос(АдресСервиса);
ОтветСервера = HTTPСоединение.Получить(HTTPЗапрос); // вот тут зависает, а потом сбрасывает по таймауту
Поток = ОтветСервера.ПолучитьТелоКакПоток();
ЧтениеДанных = Новый ЧтениеДанных(Поток);
СтрокаДанных = ЧтениеДанных.ПрочитатьСтроку();
Может я что-то не так делаю?
Пока сделал через Wscript.Shell.
Вот такая конструкция работает:
СтрокаЗапуска = "curl -k -N " + """https://" + Сервер + АдресСервиса + """";
WshShell = Новый COMОбъект("Wscript.Shell");
WshExec = WshShell.Exec(СтрокаЗапуска);
+1 к (1)
такие штуки надо вешать вне 1с, а это что-то пускай ковыряет https-сервис в 1ске через менеджер очередей.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший