HTTP-клиент

0. 81 28.07.21 02:53 Сейчас в теме
Лучшие комментарии
26. SpaceOfMyHead 81 12.09.21 10:24 Сейчас в теме
Вышло обновление 1.2.0

Добавил импорт из Postman (формат файла 2.1).

Смотрите какая штука теперь возможна. Вы (или ваш коллега из web) накидали запрос в Postman; экспортировали его... А теперь импортировали его в консоли Клиента и там же сгенерировать код 1С. PROFIT!

Ещё появилась Bearer-авторизация.
Остальные комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Segate 54 28.07.21 10:03 Сейчас в теме
Вопрос немного не по теме:
Как передать полученные куки в поле html?
2. SpaceOfMyHead 81 28.07.21 10:20 Сейчас в теме
(1) Получить доступ к Cookie можно так.

Сессия находится в дополнительных параметрах. В сессии есть поле "Печенье". Допустим, вы храните в переменной "ДП" настроенные дополнительные параметры выполнения запроса. Тогда можно либо обратиться непосредственно к Печенью:

х = ДП.Сессия.Печенье; // тип Соответствие


либо сделать копию и обратиться к копии:

Копия = КлиентHTTPКлиентСервер.НовыеДополнительныеПараметры();
КлиентHTTPКлиентСервер.СкопироватьПеченье(Копия, ДП);
х = Копия.Сессия.Печенье;
15. Serg O. 199 29.07.21 07:58 Сейчас в теме
(2) куки в сессии, а как ту же самую сессию (не новую, а ту, где куки были), получить?
Или Через нлвый... Вовсе не новый, а старый клиент http?
16. SpaceOfMyHead 81 29.07.21 11:13 Сейчас в теме
(15) "Сессия" – внутренний объект дополнительных параметров. Клиент сам позаботится о сборе и использовании Cookie. Использование сессии добавил в примеры кода.

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

Однако есть служебная процедура копирования Cookie между дополнительными параметрами выполнения запроса:
КлиентHTTPКлиентСервер.СкопироватьПеченье(ПараметрыПриемник, ПараметрыИсточник)

Пример использования в коде формы Консоли (команда "Выполнить").
3. Segate 54 28.07.21 10:23 Сейчас в теме
(2) а теперь мне нужно передать эти куки в поле html, чтобы получить доступ к данным после авторизации.
4. SpaceOfMyHead 81 28.07.21 10:39 Сейчас в теме
(3) Если вы выполняете запросы к внешним сервисам через Клиент, то система сама подставит куки (при наличии) куда надо (заголовок Cookie) и отправит их. С ответом сервиса вы уже работаете самостоятельно.

Большего сказать не могу, не знаю подробностей вашей ситуации.
27. SpaceOfMyHead 81 12.09.21 11:21 Сейчас в теме
(3) Смотрите.

Любой http-клиент передаёт данные авторизации в заголовках очередного запроса (есть нюансы, а в принципе - так). Cookie - это один из заголовков.

Страница, которую мы видим в браузере, приходит в теле ответа (опять же зачастую) - приходит текстом HTML.

ПолеHTML в платформе как раз для того, чтобы, используя движок браузера, отобразить этот HTML в "человеческом" виде.

Так что ПолеHTML и попытка авторизоваться - разные истории.

И сабж берёт всю эту низкоуровневую возьню с авторизацией на себя под капотом.
29. Segate 54 13.09.21 10:35 Сейчас в теме
(27)
ж берёт всю эту низкоуровневую возьню с авторизацией на себя под капотом


Понимаю, но целевой интернет портал - очень плохо работает с авторизацией, а так же с редиректом после авторизации... и хочется фронтовые запросы на авторизацию проводить самостоятельно... а в поле http уже передать готовую куку полученную при авторизации в другом месте.
Второй вариант - в поле html передавать сначала скрипт для авторизации, а потом уже делать редирект
5. oleganatolievich 148 28.07.21 10:47 Сейчас в теме
круто. но зачем, если есть Postman / SoapUI?
6. SpaceOfMyHead 81 28.07.21 10:54 Сейчас в теме
(5)Клиент – это не только консоль, но и библиотека методов для кодинга.
8. oleganatolievich 148 28.07.21 11:21 Сейчас в теме
(6) да, видел уже какой-то клиент HTTP-запросов здесь. но мне чего-то не зашло. хорошо, что делаете что-то в этом направлении.
10. SpaceOfMyHead 81 28.07.21 11:44 Сейчас в теме
(8)
не зашло


Какие потребности остались не закрыты?
28. SpaceOfMyHead 81 12.09.21 11:30 Сейчас в теме
(5) Теперь можно импортировать запросы из Postman и транслировать их в код 1С в консоли Клиента!
7. vano-ekt 855 28.07.21 11:16 Сейчас в теме
(0) Консоль HTTP запросов (ИР)
9. SpaceOfMyHead 81 28.07.21 11:27 Сейчас в теме
(7) А там можно в форме тела POST передавать файлы? А там Set-Cookie от https:// / распарсятся?

а вы попробуйте этот
12. SpaceOfMyHead 81 28.07.21 12:15 Сейчас в теме
(9) отмодерировали адрес, который возвращает в значении Cookie JSON, что ломает парсинг в ИР (и в Коннекторе). Создатели платформы подкинули проблем, соединив заголовки с одинаковым именем в строку через ','
11. SpaceOfMyHead 81 28.07.21 11:51 Сейчас в теме
(7) Там свои плюсы, здесь свои. Консоль в сабже – приятный бонус к библиотеке методов.
13. Tahallus 430 28.07.21 19:48 Сейчас в теме
14. SpaceOfMyHead 81 28.07.21 20:02 Сейчас в теме
(13) Не буду я здесь критиковать работу коллег.

В Клиенте собран мой опыт работы в 1С с внешними сервисами. Здесь есть фичи, которых нет в других работах (или они реализованы по другому). И да, Коннектор имеет фичи, которые отсутствуют в Клиенте.
mvxyz; Evg-Lylyk; mihap; +3 Ответить
17. dctvghbdtn 29.07.21 13:56 Сейчас в теме
18. SpaceOfMyHead 81 29.07.21 14:16 Сейчас в теме
(17) Судя по переписке... Вам сервер вернул 200 и в заголовках нет Location (перепроверьте наличие этого заголовка). Значит для вас как для клиента никаких редиректов нет. И это не ваше дело как клиента, куда там ходит и что делает сервер, чтобы выдать вам ответ, ни технически, ни идеологически. Вы "знаете" только то, что вам вернулось в ответе.
21. dctvghbdtn 29.07.21 14:46 Сейчас в теме
(18) Логика ваша понятна. Интересен концепт в принципе обработки таких запросов.
Эта ситуация адекватно отрабатывается браузером, т.е. я увижу и свой post удаленному серверу и увижу редирект (как отрисованная "новая" страница). Т.е. связь (соединение) между клиентом и сервером сохранилась. Но в моем случае получается контекст соединения теряется в принципе.
22. SpaceOfMyHead 81 29.07.21 14:58 Сейчас в теме
(21) Нужны подробности. Адрес обращения, параметры, заголовки, порт, прокси...
19. malikov_pro 967 29.07.21 14:29 Сейчас в теме
Чем не устроил?
https://github.com/vbondarevsky/Connector

Статья
https://infostart.ru/public/709325/

С телом запроса иногда траблы (прекос по параметрам), в остальном норм.
20. malikov_pro 967 29.07.21 14:31 Сейчас в теме
Если интересна тема унификации HTTP, то посмотрите https://github.com/gothinkster/realworld, будет желание реализовать - пишите, выделю время.
23. user1346935 29.07.21 15:07 Сейчас в теме
24. SpaceOfMyHead 81 03.08.21 11:08 Сейчас в теме
Вышло исправление. Исправил выполнение POST multipart (в ранних версиях не работает совсем)
25. SpaceOfMyHead 81 13.08.21 11:13 Сейчас в теме
Вышло обновление 1.1.0

Добавил кодогенерацию интерактивно настроенного запроса в Консоли.
Появился доступ к дополнительным настройкам выполнения запроса.
26. SpaceOfMyHead 81 12.09.21 10:24 Сейчас в теме
Вышло обновление 1.2.0

Добавил импорт из Postman (формат файла 2.1).

Смотрите какая штука теперь возможна. Вы (или ваш коллега из web) накидали запрос в Postman; экспортировали его... А теперь импортировали его в консоли Клиента и там же сгенерировать код 1С. PROFIT!

Ещё появилась Bearer-авторизация.
Оставьте свое сообщение
Вопросы с вознаграждением
Вакансии
Web-разработчик (PHP, Bitrix)
Санкт-Петербург
зарплата от 150 000 руб. до 150 000 руб.
Полный день

Администратор 1C
Москва
зарплата до 110 000 руб.
Полный день

Консультант-аналитик 1С
Москва
зарплата до 180 000 руб.
Полный день

Программист 1С
Москва
зарплата до 160 000 руб.
Полный день

Программист 1С
Нижний Новгород
зарплата от 130 000 руб. до 160 000 руб.
Полный день