Получает при помощи 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 учебного сервера перечисляет поддерживаемые методы.
Где и как запускать
Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.
Подготовка
В 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.
Используйте учебную файловую базу на том же компьютере. В клиент-серверной базе 127.0.0.1 означает машину сервера 1С, а не компьютер пользователя.
Перед новым самостоятельным примером перезапустите учебный HTTP-сервер: это восстанавливает вымышленные товары A-01 и B-02. Рабочие базы и Avito этот сервер не использует.
Если порт 18785 занят, сначала выясните, какой процесс его занимает; не останавливайте чужую службу. Не меняйте пример на адрес рабочего API.
Соединение = Новый HTTPСоединение("127.0.0.1", 18785, , , , 10, Неопределено);
Запрос = Новый HTTPЗапрос("/guide/products");
Ответ = Соединение.ПолучитьЗаголовки(Запрос);
Сообщить(Ответ.КодСостояния);
Сообщить(Ответ.Заголовки.Получить("Content-Type"));
Сообщить(Ответ.Заголовки.Получить("Content-Length"));
ОтветOPTIONS = Соединение.ВызватьHTTPМетод("OPTIONS", Запрос);
Если ОтветOPTIONS.КодСостояния <> 200 Тогда
ВызватьИсключение "Учебный сервер не подтвердил OPTIONS";
КонецЕсли;
Сообщить(ОтветOPTIONS.Заголовки.Получить("Allow"));
Сообщить(Соединение.Сервер);
Сообщить(Соединение.Порт);
Сообщить(Соединение.Таймаут);
Сообщить(Соединение.Защищенное);
Сообщить(Соединение.ИспользоватьАутентификациюОС);Разбор по шагам
ПолучитьЗаголовки выполняет HEAD; Content-Length описывает ресурс, не фактическое число полученных байтов тела HEAD.
ВызватьHTTPМетод принимает сначала строку метода, затем объект запроса.
Читаем Allow и настройки соединения, не выводя пароль.
Как проверить результат
HEAD и OPTIONS возвращают 200; Allow содержит GET, HEAD, POST, PUT, PATCH, DELETE, OPTIONS.
Сервер 127.0.0.1, порт 18785, таймаут 10, Защищенное — Ложь.
Ожидаемый результат
Сведения о ресурсе прочитаны без создания или удаления товаров.
На что обратить внимание
Не все внешние API поддерживают HEAD или OPTIONS; проверяйте их документацию и фактический статус.
Защищенное=Ложь допустимо здесь только для loopback и вымышленных данных, не для передачи токенов внешнему сервису.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.