Документация для разработчиков

Конструктор HttpClient

public
\Bitrix\Main\Web\HttpClient::__construct(
 array $options = null
);

Нестатический метод вызывается при создании экземпляра класса и позволяет в нем произвести какие-то действия при создании объекта.

Параметры

ПараметрОписаниеВерсия
optionsМассив параметров:
  • bool redirect Следовать переадресации (по умолчанию true - редирект).
  • int redirectMax Максимальное количество редиректов (по умолчанию 5).
  • bool waitResponse Дождаться ответа или отключиться сразу после запроса (по умолчанию true - ожидание ответа)
  • int socketTimeout Таймаут соединения в секундах (по умолчанию 30).
  • int streamTimeout Таймаут потока в секундах (по умолчанию 60).
  • string version Версия HTTP (HttpClient::HTTP_1_0, HttpClient::HTTP_1_1) (по умолчанию "1.0").
  • string proxyHost Имя\адрес прокси сервера.
  • int proxyPort Порт прокси сервера.
  • string proxyUser Имя пользователя прокси сервера.
  • string proxyPassword Пароль прокси.
  • bool compress Использование сжатия zip (по умолчанию false). Если true, будет послан Accept-Encoding: gzip.
  • string charset Кодировка для содержимого POST и PUT запросов. (Используется в поле заголовка запроса Content-Type.)
  • bool disableSslVerification Если установлено true, то верификация ssl-сертификатов производиться не будет.
Все эти опции не обязательно указывать при создании экземпляра класса, их можно установить в дальнейшем.

Примеры

Создать экземпляр класса:

$http=new \Bitrix\Main\Web\HttpClient(array $options = null);)

Выполнение GET запроса. В параметр необходимо передать абсолютный путь. Возвращается строка ответа или false, если произошла ошибка. Обратите внимание, что пустая строка не является ошибкой.

$http->get($url)

Выполнение POST запроса. Первый параметр - абсолютный путь. Второй параметр может быть массивом, строкой, объектом. Аналогично предыдущему методу возвращает строку ответа или false, если произошла ошибка.

$http->post($url, $postData = null)

Установка заголовока http в запросе. Первый параметр устанавливает имя поля заголовка, второй параметр значение этого поля. (Обратите внимание, что в обоих случаях передается строка. То есть если нужно сразу установить несколько заголовков, то метод нужно будет вызвать несколько раз.) Третий параметр отвечает за то, будет ли перезаписываться заголовок, если уже установлен параметр с таким же именем или нет.

$http->setHeader($name, $value, $replace = true)

Установка cookies для запроса. Единственный параметр принимает массив, где ключ - это имя cookies, а значение - значение cookies.

$http->setCookies(array $cookies)

Установка поля заголовка запроса базовой http авторизации. В параметрах передается имя пользователя и пароль.

$http->setAuthorization($user, $pass)

Установка опции перенаправления. Первый параметр устанавливает делать ли перенаправления или нет, а второй задаёт максимальное количество перенаправлений.

$http->setRedirect($value, $max = null)

Установка параметра, который задаёт ожидание отклика от сервера или закрытие соединения сразу после запроса. По умолчанию - ожидание.

$http->waitResponse($value)

Установка максимального времени ожидания ответа в секундах.

$http->setTimeout($value)

Установка версии HTTP протокола. По умолчанию 1.0. Можно установить 1.1

$http->setVersion($value)

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

$http->setCompress($value)

Установка кодировки для тела объектов запросов POST и PUT

$http->setCharset($value)

Установка параметров для использования прокси сервера. Указывается первым параметром хост или адрес, вторым - порт, третий параметр - это имя пользователя и четвертый - пароль. Все параметры кроме имени хоста не обязательны.

$http->setProxy($proxyHost, $proxyPort = null, $proxyUser = null, $proxyPassword = null)

Указание, что результатом будет поток. Параметром передается реcурс на файл или на поток.

$http->setOutputStream($handler)

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

$http->download($url, $filePath)


Пользовательские комментарии

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

Для этого нужно всего лишь авторизоваться на сайте

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

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
© «Битрикс», 2001-2019, «1С-Битрикс», 2019
Наверх