Функционал команды HTTPСоединение на платформах 8.3.14 и 8.3.15

1. tsmult 4 25.06.20 13:18 Сейчас в теме
Добрый день. Вопрос в следующем:

Крупный дистрибьютор отдает сведения для своих клиентов с 2-х серверов. Получать сведения следует передав запрос на сервер:
Соединение = Новый HTTPСоединение("АдресСервера", Порт,"ИмяПользователя", "Пароль");
Запрос = Новый HTTPЗапрос("/GetUserDataJson");
Результат=Соединение.Получить(Запрос);


Код одинаковый для запроса к первому серверу и ко второму. Отличаются только адреса серверов и данные аутентификации.

На платформе 8.3.14 вплоть до версии 2095 нет ни каких проблем :

С обоих серверов возвращается ответ, извлекается тело ...

Но тот же код на платформе 8.3.15 (попробовал на 1985) и 8.3.16 на одном сервере срабатывает как и прежде - без проблем (ответ, тело и т.д.), а при обращении к другому,при попытке выполнения Соединение.Получить(Запрос) , возвращается "Ошибка работы с Интернет: Unsupported protocol".

Запрос в браузере выполняется как и прежде... Представители дистрибьютора говорят, что на серверах ничего не изменилось.

На ИТС не нашел информации... но честно говоря не понимаю - что же я все таки ищу и в какую сторону смотреть???
Что же изменилось в платформе 8.3.15 и новее в отношении HTTPСоединение и HTTPЗапрос?????
На что надо обратить внимание????
ПОМОГИТЕ!!!
Найденные решения
16. tsmult 4 13.10.20 10:30 Сейчас в теме
Всем спасибо за участие. Вопрос закрыт.

Выяснилось, что сервер возвращал ответ в котором проставлял версию HTTP 1.0. Установили 1.1 все заработало.
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
5. Sashares 35 26.06.20 11:04 Сейчас в теме
(1) Поставьте Fiddler, выполните запрос в браузере, в платформе на которой работает, на которой не работает - сравните результаты.
https://www.telerik.com/fiddler
7. tsmult 4 30.06.20 11:56 Сейчас в теме
(5) Не могли бы более развернуто объяснить: как, а главное что на фидлере съэмулировать что бы он так же реагировал как проблемный сервер???
8. Sashares 35 30.06.20 12:02 Сейчас в теме
(7)На фидлере ничего не надо эмулировать, он показывает реальные запросы и ответы от разных программ.
То есть нужно:
1 - запустить фидлер
2 - запустить 1с под платформой где работает обмен
3 - в 1с выполнить запросы к сервису - в фидлере будут видны эти запросы (в таблице), в правой части - по каждой строке таблицы - на закладке RAW - полный текст запроса/ответа вместе с заголовками.
4 - запустить 1с под платформой где НЕ работает обмен, выполнить запросы к сервису, чтобы выдалась ошибка
5 - сравнить запросы/ответы (с закладки RAW) которые будут видны в фидлере
9. tsmult 4 30.06.20 12:51 Сейчас в теме
(8)Сделал. Разницы в информации на закладке RAW нет!!! Причем Fiddler в обоих случаях получает ответ от сервера. И он в обоих случаях одинаковый. Мистика какая то!
10. Sashares 35 30.06.20 13:39 Сейчас в теме
(9)И запросы одинаковые и ответы?
Тогда стоит написать на v8*1c.ru, сообщить о проблеме, приложить файлы.
2. serg33rus 28 25.06.20 14:58 Сейчас в теме
А в браузере случайно редирект на https не срабатывает? Сейчас популярная тема. Ставит 301 код и перебрасывают с http на https.
3. tsmult 4 25.06.20 17:51 Сейчас в теме
4. serg33rus 28 26.06.20 10:44 Сейчас в теме
(3) Тогда или в отладчике или переделывать форму, надо смотреть что возвращает в Результат. Там должен быть и код ответа и ошибка строкой. Тогда хоть что-то будет понятно. Код ошибки позволит локализовать проблему.
6. tsmult 4 30.06.20 11:54 Сейчас в теме
(4)
Результат=Соединение.Получить(Запрос); 

Если поставить точку останова на этой строке и попытаться шагнуть в нее (F10) вываливается вышеуказанная ошибка. Ни ответов, ни тела нет
11. serg33rus 28 01.07.20 14:53 Сейчас в теме
(6) Странно все это. Т.е. в браузере get запрос к http://....... срабатывает без проблем? Тогда похоже на глюки платформы, но сам пользуюсь 16 и активно используют обмен данными по http. Не сталкивался с таким поведением.
Кстати, а браузер в инет не через прокси случайно лезет?
12. tsmult 4 01.07.20 15:13 Сейчас в теме
(11)Да, get запрос в браузере возвращает ожидаемые данные как с одного, так и с другого сервера. Прокси - нет. Я не думаю, что это глюк. Ведь Второй сервер отрабатывает на любой платформе. Я хотел бы получить ответ : а что значит "Ошибка работы с Интернет: Unsupported protocol"??? Что ждет функция
Соединение.Получить(Запрос)
в качестве ответа от сервера??? может быть теперь нужно какой то заголовок передавать ??? Или сказать админам что они просмотрели настройку сервера?
13. serg33rus 28 02.07.20 09:33 Сейчас в теме
(12) Функция в качестве ответа ждет код 200 и данные. Или не 200 если ошибка. Кстати. А ты на чей стороне вызываешь этот код: клиента или сервера? Вообще такая ошибка мелькает когда к https обращаешься как к http. Но тут какая-то мистика, в браузере говоришь открывается http. Если еще идея. Попробуй в заголовок воткнуть user-agent. Хотя это уже от безисходности.
14. tsmult 4 02.07.20 10:26 Сейчас в теме
(13)
Заголовки = Новый Соответствие;
	Заголовки.Вставить("Content-Type", "application/json");
	Заголовки.Вставить("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 YaBrowser/20.6.2.195 Yowser/2.5 Safari/537.36");
	Запрос = Новый HTTPЗапрос("/GetParamsJson",Заголовки);
        Результат=Соединение.Получить(Запрос);


Сделал вот так.
На 14 платформе без изменений - все возвращается, 15 и 16 тоже без изменений - та же ошибка. Может что то не так в заголовке User-Agent?

Код дает неизменный результат что на стороне сервера, что на стороне клиента.
15. serg33rus 28 02.07.20 10:42 Сейчас в теме
(14) Просто чудеса. Боюсь что тебе придется просить помощи у админов сайта. Пусть в логе посмотрят что за запрос вообще идет. но то что 14 платформа отрабатывает, а 15 и 16 нет - это уже за гранью понимания, если честно.
16. tsmult 4 13.10.20 10:30 Сейчас в теме
Всем спасибо за участие. Вопрос закрыт.

Выяснилось, что сервер возвращал ответ в котором проставлял версию HTTP 1.0. Установили 1.1 все заработало.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот