Как использовать функцию `wp_remote_retrieve_headers()` в WordPress

# Функция wp_remote_retrieve_headers()

Функция wp_remote_retrieve_headers() предназначена для извлечения только заголовков из сырого HTTP-ответа. Она используется для работы с HTTP-запросами в WordPress.

## Возвращаемое значение

Функция возвращает либо заголовки ответа, либо пустой массив, если был передан некорректный параметр.

**Тип возврата:** 
- WpOrgRequestsUtilityCaseInsensitiveDictionary | Массив. Заголовки ответа или пустой массив.

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

```php
$response = wp_remote_retrieve_headers( $response );

Аргументы

  • $response (array | WP_Error) (обязательный) — HTTP-ответ, который нужно обработать.

Примеры

Пример 1: Получение всех заголовков ответа

$response = wp_remote_get( 'http://httpbin.org/get?a=b&c=d' );
$headers = wp_remote_retrieve_headers( $response );

print_r( $headers );

Результат:

Requests_Utility_CaseInsensitiveDictionary Object
(
    [data:protected] => Array
        (
            [date] => Thu, 09 Jun 2022 02:27:42 GMT
            [content-type] => application/json
            [content-length] => 407
            [server] => gunicorn/19.9.0
            [access-control-allow-origin] => *
            [access-control-allow-credentials] => true
        )
)

Обращение к конкретному заголовку

Чтобы получить только одно значение заголовка, используйте ключ массива:

$headers = wp_remote_retrieve_headers( $response );
$content_length = $headers['content-length']; // 407

Примечания

  • Функция использует класс CaseInsensitiveDictionary для хранения заголовков.

Изменения

  • С версии 2.7.0: Функция была добавлена.
  • С версии 4.6.0: Возвращаемое значение изменено с массива на экземпляр класса WpOrgRequestsUtilityCaseInsensitiveDictionary.

Исходный код функции

Вот как выглядит код функции wp_remote_retrieve_headers:

function wp_remote_retrieve_headers( $response ) {
    if ( is_wp_error( $response ) || ! isset( $response['headers'] ) ) {
        return array();
    }

    return $response['headers'];
}

Связанные функции

  • HTTP API — функции для работы с HTTP в WordPress:
    • status_header()
    • wp_get_http_headers()
    • wp_http_validate_url()
    • wp_remote_get()
    • wp_remote_head()
    • wp_remote_post()
    • wp_remote_request()
    • wp_remote_retrieve_body()
    • wp_remote_retrieve_cookie()
    • wp_remote_retrieve_cookie_value()
    • wp_remote_retrieve_cookies()
    • wp_remote_retrieve_header()
    • wp_remote_retrieve_response_code()
    • wp_remote_retrieve_response_message()
    • wp_safe_remote_request()

Эта статья описывает, как использовать wp_remote_retrieve_headers() для получения заголовков из HTTP-ответов в WordPress. Теперь вы можете легко извлекать нужную информацию из сетевых запросов!

Leave a Reply

Ваш адрес email не будет опубликован. Обязательные поля помечены *