HTTPСоединение.ПолучитьЗаголовки

Методы · Head

Получает при помощи HEAD-запроса информацию о запрашиваемых данных, содержащуюся в заголовках, не получая сами данные. При вызове на клиенте данный метод, начиная с Версия8_3_21, признан устаревшим и вместо него требуется использовать ПолучитьЗаголовкиАсинх.

Синтаксис

ПолучитьЗаголовки(<HTTPЗапрос>)
Полное описание, параметры и ограничения

HTTPСоединение.ПолучитьЗаголовки (HTTPConnection.Head)

HTTPСоединение (HTTPConnection)

ПолучитьЗаголовки (Head)

Доступен, начиная с версии 8.3.6.

Синтаксис:
ПолучитьЗаголовки(<HTTPЗапрос>)
Параметры:

<HTTPЗапрос> (обязательный)
Тип: HTTPЗапрос.
Запрос, передаваемый на сервер.
Возвращаемое значение:
Тип: HTTPОтвет.

Описание:

Получает при помощи HEAD-запроса информацию о запрашиваемых данных, содержащуюся в заголовках, не получая сами данные.
При вызове на клиенте данный метод, начиная с Версия8_3_21, признан устаревшим и вместо него требуется использовать ПолучитьЗаголовкиАсинх.

Доступность:

Тонкий клиент, мобильный клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение (клиент), мобильное приложение (сервер), мобильный автономный сервер.

Использование в версии:

Доступен, начиная с версии 8.3.6.

Описание изменено в версии 8.3.21.

Методическая информация

Практические примеры

Получить заголовки без тела и вызвать произвольный HTTP-метод

HEAD возвращает сведения о ресурсе без его тела. OPTIONS учебного сервера перечисляет поддерживаемые методы.

Где и как запускать

Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.

Подготовка

  1. В PowerShell запустите: & "C:\Program Files\nodejs\node.exe" "C:\Opencart_project\AmaDesk\tools\1c-platform-context-8.5.1.1343\guide-http-mock.cjs". Оставьте терминал открытым; остановка — Ctrl+C.

  2. Используйте учебную файловую базу на том же компьютере. В клиент-серверной базе 127.0.0.1 означает машину сервера 1С, а не компьютер пользователя.

  3. Перед новым самостоятельным примером перезапустите учебный HTTP-сервер: это восстанавливает вымышленные товары A-01 и B-02. Рабочие базы и Avito этот сервер не использует.

  4. Если порт 18785 занят, сначала выясните, какой процесс его занимает; не останавливайте чужую службу. Не меняйте пример на адрес рабочего API.

Соединение = Новый HTTPСоединение("127.0.0.1", 18785, , , , 10, Неопределено);
Запрос = Новый HTTPЗапрос("/guide/products");
Ответ = Соединение.ПолучитьЗаголовки(Запрос);
Сообщить(Ответ.КодСостояния);
Сообщить(Ответ.Заголовки.Получить("Content-Type"));
Сообщить(Ответ.Заголовки.Получить("Content-Length"));
ОтветOPTIONS = Соединение.ВызватьHTTPМетод("OPTIONS", Запрос);
Если ОтветOPTIONS.КодСостояния <> 200 Тогда
    ВызватьИсключение "Учебный сервер не подтвердил OPTIONS";
КонецЕсли;
Сообщить(ОтветOPTIONS.Заголовки.Получить("Allow"));
Сообщить(Соединение.Сервер);
Сообщить(Соединение.Порт);
Сообщить(Соединение.Таймаут);
Сообщить(Соединение.Защищенное);
Сообщить(Соединение.ИспользоватьАутентификациюОС);

Разбор по шагам

  1. ПолучитьЗаголовки выполняет HEAD; Content-Length описывает ресурс, не фактическое число полученных байтов тела HEAD.

  2. ВызватьHTTPМетод принимает сначала строку метода, затем объект запроса.

  3. Читаем Allow и настройки соединения, не выводя пароль.

Как проверить результат

  1. HEAD и OPTIONS возвращают 200; Allow содержит GET, HEAD, POST, PUT, PATCH, DELETE, OPTIONS.

  2. Сервер 127.0.0.1, порт 18785, таймаут 10, Защищенное — Ложь.

Ожидаемый результат

Сведения о ресурсе прочитаны без создания или удаления товаров.

На что обратить внимание

  1. Не все внешние API поддерживают HEAD или OPTIONS; проверяйте их документацию и фактический статус.

  2. Защищенное=Ложь допустимо здесь только для loopback и вымышленных данных, не для передачи токенов внешнему сервису.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.