BLS API PHP file_get_contents нет ответа

Я получаю пустой ответ от BLS на запрос к их API. Кроме того, $ http_response_header пуст.

Почему $ http_response_header будет пустым? При попытке через http вместо https в заголовке ответа отображается как минимум 301 редирект.

$url = 'https://api.bls.gov/publicAPI/v2/timeseries/data/';
$method = 'POST';
$query = array(
    'seriesid'  => array('CUSR0000SA0'),
    "registrationkey" => "XXXXXX" ,
    'startyear' => '2016',
    'endyear'   => '2018'

);
$pd = json_encode($query);
$contentType = 'Content-Type: application/json';
$contentLength = 'Content-Length: ' . strlen($pd);
$result = file_get_contents(
    $url, null, stream_context_create(
        array(
            'http' => array(
            'method' => $method,
            'header' => $contentType . "\r\n" . $contentLength . "\r\n",
            'content' => $pd ),
            "ssl"=>array(
                "cafile" => "C:/xampp/php/cacert.pem",
                "verify_peer"=> true,
                "verify_peer_name"=> true,
            ),
        )
    )
);
var_dump($http_response_header);
var_dump($result);

выход: массив (0) {} строка (0) ""

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
0
28
1

Ответы 1

Вместо этого я попробовал curl и использовал следующее, чтобы вывести ошибку. Сервер отвечал с неизвестной версией SSL, потому что я использую старую версию PHP. Я обновил свой xampp и теперь получаю ожидаемые результаты.

$fp = fopen('/errorlog.txt', 'w');
        curl_setopt($ch, CURLOPT_STDERR, $fp);
        curl_setopt($ch, CURLOPT_HEADER, 1);
        curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
        curl_setopt($ch, CURLOPT_VERBOSE, 1);

Другие вопросы по теме