waNet

Отправка запросов к удаленным ресурсам

Содержание...

Класс предназначен для удобного выполнения запросов — с помощью расширения curl, а также функций file_get_contents и fsockopen. Класс автоматически использует тот из доступных методов (транспортов) отправки запросов — расширение либо одну из перечисленных функций, — который доступен на сервере, выполняет проверку на наличие ошибок при получении ответа, а также возвращает содержимое ответа, раскодированное в соответствии с указанным форматом.

Если вы считаете, что классу не хватает какой-либо объективно необходимой функциональности, оформляйте свои предложения в виде pull request в GitHub-репозитории фреймворка.

Порядок использования класса:

  1. Создать экземпляр класса, передав в него массив необходимых параметров.
  2. Если необходимо, вызвать «подготовительные» методы: cookies и userAgent.
  3. Для выполнения запроса вызвать метод query, который вернет содержимое ответа.
  4. Если необходимо, вызвать методы, возвращающие дополнительную информацию об ответе на запрос: getResponse и getResponseHeader.

Методы

public function __construct ($options, $custom_headers = array())

Параметры

Пример

$options = array(
    'format'        => waNet::FORMAT_JSON
    'timeout'       => 10,
    'authorization' => true,
    'login'         => $login,
    'password'      => $password,
);
$net = new waNet($options);

public function cookies ($path)

Устанавливает путь по умолчанию к файлу, содержащему cookies, для использования в качестве параметра CURLOPT_COOKIEFILE при подключении через curl. Это значение по умолчанию используется, только если в параметрах подключения через curl не указан иной путь к файлу cookies.

Параметры

Пример

$net = new waNet($options);
$net->cookies($path);

public function getResponse ($raw = false)

Возвращает содержимое последнего полученного ответа на запрос.

Параметры

Пример

$options['format'] = waNet::FORMAT_JSON;
$net = new waNet($options);
$decoded_response = $net->query($url);
$raw_response = $net->getResponse(true);

public function getResponseHeader ($header = null)

Возвращает содержимое заголовков последнего полученного ответа.

Параметры

Пример

$net = new waNet($options);
$response = $net->query($url);
$response_headers = $net->getResponseHeader();

public function query ($url, $content = array(), $method = self::METHOD_GET)

Выполняет запрос к указанному ресурсу и возвращает раскодированное содержимое ответа в соответствии с указанным форматом.

Выполнение метода может привести к возникновению исключения, поэтому его вызов необходимо обернуть в блок try...catch для самостоятельной обработки ошибок. Код ошибки в этом случае соответствует коду ответа HTTP.

Параметры

Пример

$net = new waNet($options);
$response = $net->query($url, $content, waNet::METHOD_POST);

public function userAgent ($user_agent = null)

Устанавливает либо возвращает значение, которое будет использовано для заголовка "User-Agent".

Параметры

Пример

$net = new waNet($options);
$net->userAgent($custom_user_agent);
$response = $net->query($url);